Я пытаюсь читать файлы PDF, созданные AutoCAD. Я хочу знать слои объектов и, если возможно, какие объекты считаются блоком.
Вот сгенерированный файл PDF, и я преобразовал его в строку.
"%PDF-1.6
%ޭ��
3 0 obj
<< /Length 183 /Filter /FlateDecode /DecodeParms
<< /Predictor 1
>>
>>
stream
x�E�A
�0\u0010E�\u0003���f�$m��R\u0010D��k)R�V���흴j\t\f����'5g\r\u0015_\u0004v�\nuGt���H[N\u0005�\u0011lf���@N8�J\f\u0016ޕ_�\u001bJʽ�\u0016̓\u001c^3�_�X!�\u0004$���(\u0002�O=83>��q�NK�O���i�{K\u0560\u001b$#�\u0004Iqz��S�\u001f�\b\u0015���\u0013�Q���v\u0588�M�`r�K\u0018�\fF�(��\u0010E\f��\a\u0010�8�
endstream
endobj
4 0 obj
<< /Type /ExtGState /BM /Normal /CA 1.00000 /ca 1.00000
>>
endobj
1 0 obj
<< /Type /OCG /Name (mad)
>>
endobj
2 0 obj
<< /Type /OCG /Name (0)
>>
endobj
6 0 obj
<< /Type /Page /Parent 5 0 R /MediaBox [0 0 612 792] /Contents [3 0 R
] /Rotate 270
/VP [
<< /Measure
<< /Subtype /RL
/A [
<< /C 1 /U ( )
>>]
/D [
<< /C 1 /U ( )
>>]
/X [
<< /C 0.06451 /U ( )
>>]
/R ( ) /Type /Measure
>> /Type /Viewport /BBox [16 50 317 741]
>>] /Resources
<< /ProcSet [ /PDF]
/ExtGState
<< /GT255 4 0 R
>>
/Properties
<< /oc1 1 0 R /oc2 2 0 R
>>
>>
>>
endobj
5 0 obj
<< /Type /Pages /Kids [6 0 R
] /Count 1
>>
endobj
7 0 obj
<< /Type /Catalog /Pages 5 0 R /OCProperties
<< /OCGs [ 1 0 R 2 0 R] /D
<< /Order [ 2 0 R 1 0 R] /OFF []
>>
>> /PageMode /UseOC /PageLayout /SinglePage /PageLabels
<< /Nums [0
<< /P <feff005b0031005d0020004d006f00640065006c>
>>]
>> /PageMode /UseOutlines /Outlines 8 0 R
>>
endobj
10 0 obj
<< /Title <feff004d006f00640065006c> /Parent 9 0 R /Dest [6 0 R /Fit]
>>
endobj
9 0 obj
<< /Title <feff00530068006500650074007300200061006e0064002000560069006500770073> /Parent 8 0 R /Count 1 /First 10 0 R /Last 10 0 R
>>\nendobj
8 0 obj
<< /Type /Outlines /Count 1 /First 9 0 R /Last 9 0 R
>>
endobj
11 0 obj
<< /Creator (AutoCAD 2018 - English 2018 \\(22.0s \\(LMS Tech\\)\\)) /Title (Model) /Producer (pdfplot14.hdi 14.00.049.000) /CreationDate (D:20200109121008) /ModDate (D:20200109121008)
>>
endobj
xref
0 12
0000000000 65535 f
0000000378 00000 n
0000000422 00000 n
0000000015 00000 n
0000000304 00000 n
0000000865 00000 n
0000000464 00000 n
0000000923 00000 n
0000001460 00000 n
0000001309 00000 n
0000001217 00000 n
0000001531 00000 n
trailer
<< /Size 12 /Root 7 0 R /Info 11 0 R
>>
startxref
1732
%%EOF\r"
Исходя из того, что я понимаю, 1 0 obj
и 2 0 obj
- это два слоя, так как там есть тип OCG
Я не знаю, как найти объекты или текст, которые нарисованы этими двумя слоями. Любая помощь, пожалуйста?