cuốn sách gpt4 ai đã làm

Python và Gimp: Làm cách nào để tiêu diệt quy trình gimp đúng cách?

In lại Tác giả: Hồ Xil Thời gian cập nhật: 2023-11-01 11:24:25 hai mươi bốn 4
mua khóa gpt4 Nike

Tôi đang sử dụng tập lệnh python được gọi bởi gimp phần mềm ảnh để chuyển đổi pdf sang jpg. Tập lệnh hoạt động tốt cho đến nay, nhưng khi hoàn thành, gimp sẽ mở một cửa sổ cmd với nội dung "Nhấn phím bất kỳ để thoát". Cửa sổ cmd này là tiến trình gimp.exe và tôi không thể tắt nó bằng tập lệnh của mình (tôi không muốn phải nhập dữ liệu đầu vào của người dùng mỗi khi chạy tập lệnh của mình).

Tôi đã thử một cái gì đó như os.system("taskkill/im gimp-2.8.exe")sys.exit(0) lệnh python như thế này nhưng không có lệnh nào hoạt động.

Đây là kịch bản python của tôi:

nhập os,time,sys,glob,re
từ nhập gimpfu *

rxcountpages = re.compile(r"/Type\s*/Page([^s]|$)", re.MULTILINE|re.DOTALL)

#Chuyển đổi một tệp pdf
quá trình def (infile, outfile):
in "Đang xử lý tập tin %s" % infile

đối với x trong phạm vi(1,countPages(infile) + 1):
in "Thử nghiệm"
countStr = str(x)
pdb.file_ps_load_setargs(100, 0, 0, 0, countStr, 6, 2, 2)
hình ảnh = pdb.file_ps_load(infile,infile)
drawable = pdb.gimp_image_get_active_layer(hình ảnh)
in "Tệp %s đã được tải OK" % infile
#outfile=os.path.join('đã xử lý',os.path.basename(infile))
#outfile=os.path.join(os.path.dirname(infile),outfile)
in tập tin
tên tệp, file_extension = os.path.splitext(outfile)
đầu ra = tên tệp + "_" + countStr + ".jpg"
in "Đang lưu vào %s" % outfile
pdb.file_jpeg_save(hình ảnh, có thể vẽ, đầu ra, đầu ra, 0.9,0,1,0,"",0,1,0,0)
in "Đã lưu vào %s" % outfile
pdb.gimp_image_delete(hình ảnh)
in "---------"

def countPages(tên tệp):
data = file(tên file,"rb").read()
trả về len(rxcountpages.findall(data))

if __name__ == "__main__":
print "Đang chạy với tên __main__ với args: %s" % sys.argv

Đây là cách tôi gọi tập lệnh gimp từ dòng lệnh Windows:

"C:\Program Files\GIMP 2\bin\gimp-2.8.exe" -idf --batch-interpreter python-fu-eval -b "import sys;sys.path=['.']+sys.path; nhập PDF;PDF.process('%1','%2');PDF.exit()" -b "pdb.gimp_quit(1)"

Tôi nghĩ lệnh gimp gimp_quit(1) sẽ đóng cửa sổ, nhưng không được.

Đây có vẻ là một vấn đề đơn giản nhưng tôi đã dành vài giờ để giải quyết vấn đề này, vì vậy mọi trợ giúp đều được đánh giá cao. Cảm ơn.

câu trả lời hay nhất

Ok, tôi đã có giải pháp bằng cách hỏi trong diễn đàn cụ thể của gimp:

Một cửa sổ bảng điều khiển bổ sung mở ra vì tôi không chỉ định xem gimp có ghi nhật ký tin nhắn của nó hay không. Đó là lý do tại sao nó mở thêm một cửa sổ giao diện điều khiển.

Vì vậy, yêu cầu bây giờ trông như thế này:

"C:\Program Files\GIMP 2\bin\gimp-console-2.8.exe" -idf --batch-interpreter python-fu-eval -b "import sys;sys.path=['.']+sys. path;nhập PDF;PDF.process('%1','%2');" -b "pdb.gimp_quit(1)" 1>c:\\temp\\gimp_startup.txt 2>&1

Về Python và Gimp: Làm cách nào để tắt quy trình gimp đúng cách?, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/44628954/

hai mươi bốn 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress