약 1,000 개가 넘는 PDF 표면에 나타날 때 사소한 채워진 원을 그리는 데 실패하지만 동일한 컨텍스트의 PNG 렌더링에는 아무런 문제가 없습니다. 나는 다양한 해결책을 시도해 왔으며 오류 메시지 나 다른 단서를 쉽게 얻을 수 없습니다 - 어떤 아이디어입니까? 명령 줄에서 실행이, 위의 코드가 좋은 PDF를 생성하지만, (맥 OS X 10.12.6에서, 최신 라이브러리가 설치)Pycairo가 100 개의 채우기를 그릴 때 Pycairo을 생성하지 못함
import cairo
Pi=3.14159265
# this works, Python 2.7
surface = cairo.PDFSurface("cairoTest.pdf", 595, 842)
cntxt = cairo.Context(surface)
cntxt.set_source_rgb(.3, .1, .6)
for xstep in range(0,50,1):
for ystep in range(0,31,1):
cntxt.arc(xstep*10.+30, ystep*10.+30, 3., 0., 2.*Pi)
cntxt.fill()
surface.write_to_png("example.png") # Output to PNG
surface.finish
# this produces zero-byte file
surface = cairo.PDFSurface("cairoTestFkd.pdf", 595, 842)
cntxt = cairo.Context(surface)
cntxt.set_source_rgb(.3, .1, .6)
for xstep in range(0,55,1):
for ystep in range(0,35,1):
cntxt.arc(xstep*10.+30, ystep*10.+30, 3., 0., 2.*Pi)
cntxt.fill()
surface.write_to_png("exampleFkd.png") # Output to PNG
surface.finish
'실패 '는 무엇을 의미합니까? 일부 서클이 보이지 않거나 모두 보이지 않았습니다. 또는 다른 문제가 있습니까? – Iron
때로는 읽을 수없는 파일을 생성하지만, 대부분 길이가 0 인 PDF 파일을 생성합니다. – Raras
surface.finish는 함수입니다. – lazka