আর্কপাইয়ের মাধ্যমে আয়তক্ষেত্র পাঠ্য উপাদানগুলিতে নিউলাইনগুলি সন্নিবেশ করানো কি ওভারল্যাপের কারণ?


10

আমি যখন আর্কম্যাপ নথিতে নিউলাইনগুলি (\ n) দিয়ে আয়তক্ষেত্রাকার পাঠ্য উপাদানগুলি সম্পাদনা করতে আর্কপাইয়ের ম্যাপিং মডিউলটি ব্যবহার করার চেষ্টা করেছি তখন আমি অন্য দিন একটি ইস্যু জুড়ে এসেছি। আউটপুটটি দেখতে কেমন দেখাচ্ছে তা এখানে:

এখানে চিত্র বর্ণনা লিখুন

আমি যে আউটপুট তৈরি করতে ব্যবহৃত কোডটি এখানে। প্রথম কলামটি হচ্ছে আয়তক্ষেত্রের পাঠ্য উপাদানগুলি Text1, Text2, Text3 নীচে যাচ্ছে; দ্বিতীয় কলামটি হ'ল "সরল" পাঠ্য উপাদানসমূহ Text4, Text5, এবং Text6 নীচে যাচ্ছে going

import os
import arcpy

HomeDir = r"C:\Desktop"
arcpy.env.workspace = HomeDir

CurrentMXD = arcpy.mapping.MapDocument(r"C:\Desktop\TextTest.mxd")
OutputFilename = r"C:\Desktop\TextTest.pdf"
if os.path.exists(OutputFilename):
    os.remove(OutputFilename)

for TextElement in arcpy.mapping.ListLayoutElements(CurrentMXD, "TEXT_ELEMENT"):
    TextElementName = TextElement.name

    String1 = "The quick brown fox jumped over the lazy dog.\nShe sells sea shells by the sea shore."
    String2 = "The quick brown fox \njumped over the lazy dog.\nShe sells sea shells by the sea shore."
    String3 = "The quick brown fox jumped \nover the lazy dog.\nShe sells sea shells by the sea shore."

    if TextElementName == "Text1":
        TextElement.text = String1
    if TextElementName == "Text2":
        TextElement.text = String2 
    if TextElementName == "Text3":
        TextElement.text = String3
    if TextElementName == "Text4":
        TextElement.text = String1
    if TextElementName == "Text5":
        TextElement.text = String2
    if TextElementName == "Text6":
        TextElement.text = String3

arcpy.mapping.ExportToPDF(CurrentMXD, OutputFilename)

এখনও অবধি, দেখে মনে হচ্ছে যে বিশৃঙ্খলাযুক্ত পাঠ্যের উপস্থিতি লাইনটি মোড়ানোর জন্য যথেষ্ট দীর্ঘ কিনা এবং নতুন লাইনের পরে লাইনটি নতুন লাইনের পরে রেখার চেয়ে দীর্ঘ কিনা তা নির্ভর করে on

ভুল হতে পারে সম্পর্কে কোন ধারণা? এখানে কি কাজ আছে? আমি সরল পাঠ্য উপাদানগুলি ব্যবহার করতে পারি এবং পাইথন ব্যবহার করে লাইন মোড়ানোর বিষয়ে চিন্তা করতে পারি তবে আমি আশা করি যে আমি কিছু বের করতে পারব।


1
আপনার কি সর্বশেষ পরিষেবা প্যাক ইনস্টল করা আছে?
জেসন শিয়েরার

উত্তর:


10

আমি এই মধ্যে দৌড়ে। এটি কারণ আরকিজিআইএস-এ উইন্ডোজ লাইন সমাপ্তি প্রয়োজন যা উভয়ই ক্যারেজ রিটার্ন এবং একটি লাইন ফিড। একটি ব্যথা বিট। ভাগ্যক্রমে এটি কাছাকাছি পাওয়া সহজ। পাইথনের পরিবর্তে ঠিক \n(যা লাইনফিডযুক্ত - পাইথন ডক্সটি আরও আগ্রহী হলে আরও দেখুন), ব্যবহার করুন \r\n


2

আমি মনে করি পাঠ্য মোড়ক মডিউলটি ব্যবহার করা আরও সহজ:

পাইথন লেবেল প্রকাশ:

def FindLabel ( [LEGAL1]  ):
  import textwrap
  return '\r\n'.join(textwrap.wrap([LEGAL1], 20)) #charcter width set at 20

এবং ফলস্বরূপ লেবেলগুলির যে কোনও অক্ষরের প্রস্থ যা আপনি চয়ন করেছেন তাতে গাড়ীর ফেরতের বিভাজন রয়েছে।

এখানে চিত্র বর্ণনা লিখুন

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.