أكثر

هل يتم فتح ملف PDF الذي تم إنشاؤه بواسطة Python AddIn باستخدام ملف Report (* .rlf) تلقائيًا؟

هل يتم فتح ملف PDF الذي تم إنشاؤه بواسطة Python AddIn باستخدام ملف Report (* .rlf) تلقائيًا؟


كاختبار لدي:

  1. قام بتأليف test.mxd بطبقة واحدة تسمى Localities في إطار بيانات واحد يسمى Layers
  2. قام بتأليف test.rlf باستخدام عرض | التقارير> إنشاء تقرير ArcGIS 10.2.2 لسطح المكتب
  3. إنشاء Python AddIn الذي ينشئ ملف PDF المتوقع من التقرير (* .rlf).

هذا هو الكود الذي يعمل جميعًا لإنشاء تقرير PDF من ميزات Localities ضمن النطاق الحالي:

استيراد arcpy import pythonaddins class ReportForExtent (object): def __init __ (self): self.enabled = True self.checked = False def onClick (self): mxd = arcpy.mapping.MapDocument ("CURRENT") df = arcpy.mapping. ListDataFrames (mxd، "Layers") [0] lyr = arcpy.mapping.ListLayers (mxd، "Localities"، df) [0] arcpy.mapping.ExportReport (lyr، r "C:  temp  test.rlf"، r "C:  temp  test.pdf"، "EXTENT"، Range = df.extent) del mxd

هل هناك طريقة لجعل Python AddIn لا يقوم فقط بإنشاء ملف PDF ولكن أيضًا لفتحه في Adobe Acrobat Reader؟


يمكنك استخدام

استيراد نظام التشغيل myfile = r "C:  temp  test.pdf" os.system ("start" + myfile)

اختبرت للتو تشغيل هذا الجزء من التعليمات البرمجية من الوظيفة الإضافية Python من ArcMap وهو يعمل بشكل جيد. مزيد من النقاش حول استخدام هذا هنا.

بدلاً من ذلك ، كما علقJasonScheirer ، يمكنك استخدامos.startfileوالذي يعمل حتى لو كان لاسم المسار مساحة فيه ، ويقول السائل يفعل بالضبط ما كان يأمل.


شاهد الفيديو: التعامل مع الملفات باستخدام بايثون تطبيق عملي