Add path/ directory to corpus
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1027513002
diff --git a/fx/path/11.pdf b/fx/path/11.pdf
new file mode 100644
index 0000000..0a02f6b
--- /dev/null
+++ b/fx/path/11.pdf
Binary files differ
diff --git a/fx/path/11_expected.pdf.0.png b/fx/path/11_expected.pdf.0.png
new file mode 100644
index 0000000..dcb74c8
--- /dev/null
+++ b/fx/path/11_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/1751_1.pdf b/fx/path/1751_1.pdf
new file mode 100644
index 0000000..4722f7c
--- /dev/null
+++ b/fx/path/1751_1.pdf
Binary files differ
diff --git a/fx/path/1751_1_expected.pdf.0.png b/fx/path/1751_1_expected.pdf.0.png
new file mode 100644
index 0000000..df4fc0d
--- /dev/null
+++ b/fx/path/1751_1_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/bug_0_length_line.pdf b/fx/path/bug_0_length_line.pdf
new file mode 100644
index 0000000..4581a0c
--- /dev/null
+++ b/fx/path/bug_0_length_line.pdf
@@ -0,0 +1,134 @@
+%PDF-1.4
+
+1 0 obj
+<<
+ /Type /Pages
+ /Kids [2 0 R]
+ /Count 1
+>>
+endobj
+
+2 0 obj
+<<
+ /Type /Page
+ /Parent 1 0 R
+ /MediaBox [0 0 531 666]
+ /Contents [4 0 R]
+ /Resources <<
+ /Font <</F1 5 0 R>>
+ >>
+
+>>
+endobj
+
+3 0 obj
+<<
+ /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+
+4 0 obj
+<<
+ /Length 0
+
+>> stream
+%% µ±Ö»ÓÐÒ»¸öµãµÄpathʱ,Èç¹ûÊÇRound Cap»á»Ò»¸öԲȦ.ÆäËûcap²»²úÉúÊä³ö
+%% reference P231
+10 w
+q
+
+1 0 0 1 50 550 cm
+1 J 10 50 m h S 30 50 m 30 50 l h S
+0 J 10 30 m h S 30 30 m 30 30 l h S
+2 J 10 10 m h S 30 10 m 30 10 l h S
+BT
+/F1 15 Tf -30 70 Td (Zero Length Solid line) Tj
+/F1 10 Tf 75 -25 TD
+(Zero Length Line with Round Cap; 10 Line Width) Tj
+0 -20 TD (Butt Cap; no Output) Tj
+(Projecting square Cap; no Output)'
+ET
+Q
+%%
+%% dash ½âÎö:ÀýÈç[10 15 30] 0 d½âÎöΪ10 on 15 off 30 on 10 off 15 on 30 off....
+%% ÎÒÃÇfoxitÊÇ10 on 15 off 30 on 30 off ....
+q
+1 0 0 1 50 480 cm
+[10 15 30] 0 d
+10 0 m 210 0 l S
+1 w 0 1 0 RG
+10 0 m 210 0 l S
+BT
+/F1 15 Tf -30 50 Td (Dash) Tj
+/F1 10 Tf 40 -30 TD (10 on 15 off 30 on 10 off 15 on 30 off....)Tj
+0 20 Td ([10 15 30] 0 d. Butt Cap)Tj
+ET
+Q
+%% 0 off ÔÚadobe²»½âÎö; 0 onÓнâÎö
+%% ÎÒÃÇfoxit²»Í¬.¿´¿´°É
+q
+1 0 0 1 20 360 cm
+[10 0] 0 d %% adobeÏ൱ÓÚ[] 0 d; foxitÏ൱ÓÚ[10] 0 d
+10 60 m 210 60 l S
+0 J
+[0 10] 0 d %% 0 on 10 off...
+10 40 m 210 40 l S
+1 J
+[0 10] 0 d %% 0 on 10 off...
+10 20 m 210 20 l S
+2 J
+[0 20] 0 d %% 0 on 20 off.....
+10 0 m 210 0 l S
+BT
+/F1 15 Tf 0 80 Td (0 Off 0 On) Tj
+/F1 10 Tf 230 -20 TD ([10 0] 0 d 10 on 0 off... -> [10] 0 d) Tj
+(Butt Cap: [0 10] 0 d; 0 on 10 off...) '
+(Round Cap: [0 10] 0 d; 0 on 10 off...)'
+(Projecting square Cap: [0 20] 0 d; 0 on 20 off...)'
+ET
+Q
+
+%% Dash Line Cap
+q
+1 0 0 1 20 260 cm
+[20] 0 d 10 40 m 210 40 l S
+1 J [20] 0 d 10 20 m 210 20 l S
+2 J [20] 0 d 10 0 m 210 0 l S
+1 w 0 1 0 RG
+0 J [20] 0 d 10 40 m 210 40 l S
+1 J [20] 0 d 10 20 m 210 20 l S
+2 J [20] 0 d 10 0 m 210 0 l S
+BT
+/F1 15 Tf 0 60 Td (Dash Line Cap) Tj
+/F1 10 Tf 230 -20 TD (Butt Cap: [20] 0 d; 20 on 20 off...) Tj
+(Round Cap: [20] 0 d; 20 on 20 off...)'
+(Projecting square Cap: [20] 0 d; 20 on 20 off...)'
+ET
+Q
+
+endstream
+endobj
+
+5 0 obj
+<<
+ /Type /Font
+ /Subtype /Type1
+ /BaseFont /Helvetica
+>>
+endobj
+
+xref
+
+
+trailer
+<<
+ /Size 0
+ /Root 3 0 R
+>>
+
+startxref
+0
+
+%%EOF
+
\ No newline at end of file
diff --git a/fx/path/bug_0_length_line_expected.pdf.0.png b/fx/path/bug_0_length_line_expected.pdf.0.png
new file mode 100644
index 0000000..7ef7f61
--- /dev/null
+++ b/fx/path/bug_0_length_line_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/bug_0_width_line.pdf b/fx/path/bug_0_width_line.pdf
new file mode 100644
index 0000000..4346b0a
--- /dev/null
+++ b/fx/path/bug_0_width_line.pdf
@@ -0,0 +1,77 @@
+%PDF-1.4
+
+1 0 obj
+<<
+ /Type /Pages
+ /Kids [2 0 R]
+ /Count 1
+>>
+endobj
+
+2 0 obj
+<<
+ /Type /Page
+ /Parent 1 0 R
+ /MediaBox [0 0 531 666]
+ /Contents [4 0 R]
+ /Resources <<
+ /Font <</F1 5 0 R>>
+ >>
+
+>>
+endobj
+
+3 0 obj
+<<
+ /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+
+4 0 obj
+<<
+ /Length 0
+
+>> stream
+%%µ±Ö»ÓÐÒ»¸öµãµÄpathʱ,Èç¹ûÊÇRound Cap»á»Ò»¸öԲȦ.ÆäËûcap²»²úÉúÊä³ö
+%% reference P231
+q
+1 0 0 1 0 600 cm
+10 w
+1 J
+100 0 m h S
+BT
+/F1 10 Tf
+80 20 TD
+(Zero Length Line with Round Cap; 10 Line Width) Tj
+ET
+Q
+%%
+
+
+
+endstream
+endobj
+
+5 0 obj
+<<
+ /Type /Font
+ /Subtype /Type1
+ /BaseFont /Helvetica
+>>
+endobj
+
+xref
+
+
+trailer
+<<
+ /Size 0
+ /Root 3 0 R
+>>
+
+startxref
+0
+
+%%EOF
+
\ No newline at end of file
diff --git a/fx/path/bug_0_width_line_expected.pdf.0.png b/fx/path/bug_0_width_line_expected.pdf.0.png
new file mode 100644
index 0000000..2645e51
--- /dev/null
+++ b/fx/path/bug_0_width_line_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/bug_white_space.pdf b/fx/path/bug_white_space.pdf
new file mode 100644
index 0000000..e8ae197
--- /dev/null
+++ b/fx/path/bug_white_space.pdf
@@ -0,0 +1,69 @@
+%PDF-1.7
+
+1 0 obj
+<<
+ /Type /Pages
+ /Kids [2 0 R]
+ /Count 1
+>>
+endobj
+
+2 0 obj
+<<
+ /Type /Page
+ /Parent 1 0 R
+ /MediaBox [0 0 531 666]
+ /Contents [4 0 R]
+ /Resources <<
+ /Font <</F1 5 0 R>>
+ >>
+
+>>
+endobj
+
+3 0 obj
+<<
+ /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+
+4 0 obj
+<<
+ /Length 0
+
+>> stream
+BT
+/F1 20 Tf
+100 400 TD
+(this is\tone line) Tj
+ET
+
+
+
+
+endstream
+endobj
+
+5 0 obj
+<<
+ /Type /Font
+ /Subtype /Type1
+ /BaseFont /Helvetica
+>>
+endobj
+
+xref
+
+
+trailer
+<<
+ /Size 0
+ /Root 3 0 R
+>>
+
+startxref
+0
+
+%%EOF
+
\ No newline at end of file
diff --git a/fx/path/bug_white_space_expected.pdf.0.png b/fx/path/bug_white_space_expected.pdf.0.png
new file mode 100644
index 0000000..f117432
--- /dev/null
+++ b/fx/path/bug_white_space_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/catering_1.pdf b/fx/path/catering_1.pdf
new file mode 100644
index 0000000..bd9543f
--- /dev/null
+++ b/fx/path/catering_1.pdf
Binary files differ
diff --git a/fx/path/catering_1_expected.pdf.0.png b/fx/path/catering_1_expected.pdf.0.png
new file mode 100644
index 0000000..62b459c
--- /dev/null
+++ b/fx/path/catering_1_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/clipping_text.pdf b/fx/path/clipping_text.pdf
new file mode 100644
index 0000000..0a999f6
--- /dev/null
+++ b/fx/path/clipping_text.pdf
@@ -0,0 +1,87 @@
+%PDF-1.4
+
+1 0 obj
+<<
+ /Type /Pages
+ /Kids [2 0 R]
+ /Count 1
+>>
+endobj
+
+2 0 obj
+<<
+ /Type /Page
+ /Parent 1 0 R
+ /MediaBox [0 0 612 792]
+ /Contents 4 0 R
+ /Resources <<
+ /Font <<
+ /F1 5 0 R
+ >>
+ >>
+
+>>
+endobj
+
+3 0 obj
+<<
+ /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+
+4 0 obj
+<<
+ /Length 0
+
+>> stream
+q
+1 0 0 1 0 500 cm
+2 w
+BT
+/F1 100 Tf
+0 0 0 rg
+6 Tr
+0 100 Td
+(Hello World!) Tj
+ET
+
+1 0 0 rg
+0 100 100 100 re f
+0 1 0 rg
+100 100 100 100 re f
+0 0 1 rg
+200 100 100 100 re f
+1 1 0 rg
+300 100 100 100 re f
+0 1 1 rg
+400 100 100 100 re f
+1 0 1 rg
+500 100 100 100 re f
+Q
+
+endstream
+endobj
+
+5 0 obj
+<<
+ /Type /Font
+ /Subtype /Type1
+ /BaseFont /Helvetica
+>>
+endobj
+
+xref
+
+
+trailer
+<<
+ /Size 0
+ /Root 3 0 R
+>>
+
+startxref
+0
+
+%%EOF
+
\ No newline at end of file
diff --git a/fx/path/clipping_text_expected.pdf.0.png b/fx/path/clipping_text_expected.pdf.0.png
new file mode 100644
index 0000000..983dee3
--- /dev/null
+++ b/fx/path/clipping_text_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/edit_getdash.pdf b/fx/path/edit_getdash.pdf
new file mode 100644
index 0000000..20eb144
--- /dev/null
+++ b/fx/path/edit_getdash.pdf
Binary files differ
diff --git a/fx/path/edit_getdash_expected.pdf.0.png b/fx/path/edit_getdash_expected.pdf.0.png
new file mode 100644
index 0000000..b7ac359
--- /dev/null
+++ b/fx/path/edit_getdash_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/edit_getlinecapstyle.pdf b/fx/path/edit_getlinecapstyle.pdf
new file mode 100644
index 0000000..eba47a3
--- /dev/null
+++ b/fx/path/edit_getlinecapstyle.pdf
Binary files differ
diff --git a/fx/path/edit_getlinecapstyle_expected.pdf.0.png b/fx/path/edit_getlinecapstyle_expected.pdf.0.png
new file mode 100644
index 0000000..a500aa1
--- /dev/null
+++ b/fx/path/edit_getlinecapstyle_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/edit_getlinejoinstyle.pdf b/fx/path/edit_getlinejoinstyle.pdf
new file mode 100644
index 0000000..709a1b1
--- /dev/null
+++ b/fx/path/edit_getlinejoinstyle.pdf
Binary files differ
diff --git a/fx/path/edit_getlinejoinstyle_expected.pdf.0.png b/fx/path/edit_getlinejoinstyle_expected.pdf.0.png
new file mode 100644
index 0000000..8380d5d
--- /dev/null
+++ b/fx/path/edit_getlinejoinstyle_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/edit_getlinewidth.pdf b/fx/path/edit_getlinewidth.pdf
new file mode 100644
index 0000000..907c364
--- /dev/null
+++ b/fx/path/edit_getlinewidth.pdf
Binary files differ
diff --git a/fx/path/edit_getlinewidth_expected.pdf.0.png b/fx/path/edit_getlinewidth_expected.pdf.0.png
new file mode 100644
index 0000000..85c3dba
--- /dev/null
+++ b/fx/path/edit_getlinewidth_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/edit_getmeterlimiter.pdf b/fx/path/edit_getmeterlimiter.pdf
new file mode 100644
index 0000000..1e5492a
--- /dev/null
+++ b/fx/path/edit_getmeterlimiter.pdf
@@ -0,0 +1,134 @@
+%PDF-1.7
+
+%Document Catalog
+1 0 obj
+<<
+ /Type /Catalog
+ /Pages 2 0 R
+>>
+endobj
+
+2 0 obj
+<<
+ /Type /Pages
+ /Kids [4 0 R]
+ /Count 1
+>>
+endobj
+
+
+%Info Object
+3 0 obj
+<<
+ /Title (Written Manully PDF File)
+ /Author (Alina-Xiaoqing_chen)
+ /Subject (Basic knowledge of manul PDF)
+ /Keywords (root catalog outlines pages)
+ /Creator (Written Manully)
+ /Producer (Written Manully)
+ /CreationDate (D:20120105112853+08'00')
+ /ModDate (D:20120105112853+08'00')
+>>
+endobj
+
+
+4 0 obj
+<<
+ /Type /Page
+ /Parent 2 0 R
+ /MediaBox [0 0 612 792]
+ /Resources <<
+ /Font <</F1 8 0 R>>
+ >>
+ /Contents [9 0 R]
+>>
+endobj
+
+8 0 obj
+<<
+ /Type /Font
+ /Subtype /Type1
+ /BaseFont /Helvetica
+>>
+endobj
+
+9 0 obj
+<<
+ /Length 0
+>>
+stream
+q
+0 1 0 RG
+10 w
+%0 j
+%1 J
+1.414 M
+%[3 1] 1 d
+50 300 m
+100 500 l
+150 300 l S
+Q
+
+q
+10.123456 M
+1 0 0 RG
+10 w
+1 0 0 1 140 0 cm
+50 300 m
+100 500 l
+150 300 l S
+Q
+
+q
+2.567809 M
+0 0 1 RG
+10 w
+1 0 0 1 280 0 cm
+50 300 m
+100 500 l
+150 300 l S
+Q
+
+q
+10.0 M
+1 0 1 RG
+10 w
+1 0 0 1 420 0 cm
+50 300 m
+100 500 l
+150 300 l S
+Q
+endstream
+endobj
+
+10 0 obj
+<<
+ /Type /ExtGState
+ /LW 5
+ /LJ 0
+ /LC 1
+ /ML 2
+ /D [[5 2] 2]
+ /CA 0.5
+ /ca 0.5
+>>
+endobj
+
+
+xref
+%´ý¹¹Ôì
+
+
+trailer
+<<
+ /Size 0 % 1 greater than the highest object number
+ /Root 1 0 R
+ /Info 3 0 R
+ /ID [<81b14aafa313db63dbd6f981e49f94f4>
+ <81b14aafa313db63dbd6f981e4>
+ ]
+>>
+startxref
+%´ý¼ÆËã
+
+%%EOF
\ No newline at end of file
diff --git a/fx/path/edit_getmeterlimiter_expected.pdf.0.png b/fx/path/edit_getmeterlimiter_expected.pdf.0.png
new file mode 100644
index 0000000..f07656c
--- /dev/null
+++ b/fx/path/edit_getmeterlimiter_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/edit_transform.pdf b/fx/path/edit_transform.pdf
new file mode 100644
index 0000000..73a3826
--- /dev/null
+++ b/fx/path/edit_transform.pdf
@@ -0,0 +1,55 @@
+%PDF-1.7
+%¡³Å×
+1 0 obj
+<</Type/Catalog/Pages 2 0 R >>
+endobj
+2 0 obj
+<</Type/Pages/Kids[ 4 0 R ]/Count 1>>
+endobj
+3 0 obj
+<</Title(Written Manully PDF File)/Author(Alina-Xiaoqing_chen)/Subject(Basic knowledge of manul PDF)/Keywords(root catalog outlines pages)/Creator(Written Manully)/Producer(Written Manully)/CreationDate(D:20120105112853+08'00')/ModDate(D:20120105112853+08'00')>>
+endobj
+4 0 obj
+<</Type/Page/Parent 2 0 R /MediaBox[ 0 0 612 792]/Resources<</Font<</F1 8 0 R >>>>/Contents 9 0 R >>
+endobj
+8 0 obj
+<</Type/Font/Subtype/Type1/BaseFont/Helvetica>>
+endobj
+9 0 obj
+<</Length 285/Filter/FlateDecode>>stream
+x}ÁNÃ0ï}
+7)xv¸ÉÛ`$Xnª´Ã`oO¦6
+j;ÏþóQBµØ¾íái»ö¿sû%¾ý|ýõ.wëXÜ10Ax+ÝNÑ9¶¬k0dÄAØ<Ïö3R´/P^Ñ)ÆJɤq~þî¯éîOÍÚZg¡4äü×1zkAXPG~ÏÕK{x©]XJl¤&n¡ÆßÀMgr`7(5C-è¼÷Øô`Õ«R¯ºXØ2ÉæHô
%0BH~IkþË\Ñbõ,û
Ñ°/hÍ@r=)×&=æD%i$ú×£$'_zªÇêcD
+endstream
+endobj
+10 0 obj
+<<
+ /Type /ExtGState
+ /LW 5
+ /LJ 0
+ /LC 1
+ /ML 2
+ /D [[5 2] 2]
+ /CA 0.5
+ /ca 0.5
+>>
+endobj
+
+
+xref
+0 1
+0000000000 65536 f
+1 4
+0000000017 00000 n
+0000000066 00000 n
+0000000122 00000 n
+0000000403 00000 n
+8 3
+0000000522 00000 n
+0000000588 00000 n
+0000000945 00000 n
+trailer
+<</Root 1 0 R /Info 3 0 R /ID[<81B14AAFA313DB63DBD6F981E49F94F4><81B14AAFA313DB63DBD6F981E4>]/Size 11>>
+startxref
+1061
+%%EOF
diff --git a/fx/path/edit_transform_expected.pdf.0.png b/fx/path/edit_transform_expected.pdf.0.png
new file mode 100644
index 0000000..af8a185
--- /dev/null
+++ b/fx/path/edit_transform_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/lines.pdf b/fx/path/lines.pdf
new file mode 100644
index 0000000..74425ba
--- /dev/null
+++ b/fx/path/lines.pdf
Binary files differ
diff --git a/fx/path/lines_expected.pdf.0.png b/fx/path/lines_expected.pdf.0.png
new file mode 100644
index 0000000..a4fee14
--- /dev/null
+++ b/fx/path/lines_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/path_1.pdf b/fx/path/path_1.pdf
new file mode 100644
index 0000000..f32b404
--- /dev/null
+++ b/fx/path/path_1.pdf
Binary files differ
diff --git a/fx/path/path_10_jd.pdf b/fx/path/path_10_jd.pdf
new file mode 100644
index 0000000..eef1068
--- /dev/null
+++ b/fx/path/path_10_jd.pdf
@@ -0,0 +1,105 @@
+%PDF-1.7
+
+1 0 obj
+<<
+ /Type /Pages
+ /Kids [2 0 R]
+ /Count 1
+>>
+endobj
+
+2 0 obj
+<<
+ /Type /Page
+ /Parent 1 0 R
+ /MediaBox [0 0 531 666]
+ /Contents [4 0 R]
+ /Resources <<
+ /Font <</F1 5 0 R>>
+ >>
+>>
+endobj
+
+3 0 obj
+<<
+ /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+
+4 0 obj
+<<
+ /Length 0
+
+>> stream
+
+100 600 40 50 re %w=40,h=50,pos:(100,600)
+s
+
+q
+6 0 0 1 180 600 cm %pos:(180,600)
+0 0 40 50 re %w=40,h=50
+s
+Q
+
+q
+0.866 0.5 -0.5 0.866 100 500 cm %pos:(100,500) Matrix = [cos¦È,sin¦È,-sin¦È,cos¦È,0,0] ¦È = 30
+0 0 40 50 re %w=40,h=50
+s
+Q
+
+
+q
+1 0.5773 0 1 100 400 cm %pos:(100,400) Matrix = [1,tan¦Á,0,1,0,0] ¦Á = 30
+0 0 40 50 re %w=40,h=50
+s
+Q
+
+q
+1 0 0.5773 1 100 300 cm %pos:(100,300) Matrix = [1,0,tan¦Â,1,0,0] ¦Â = 30
+0 0 40 50 re %w=40,h=50
+s
+Q
+
+BT
+
+/Font1 10 Tf
+50 270 TD
+(Rect5: Skews the Y axis by an angle 30) Tj
+0 120 TD
+(Rect4: Skews the X axis by an angle 30 ) Tj
+0 100 TD
+(Rect3: Rotation = 30 Pos x=100, y=500) Tj
+10 90 TD
+( Pos x=100, y=600) Tj
+0 10 TD
+(Rect1: w = 40, h = 50) Tj
+120 0 TD
+(Rect2: w = 240, h = 50 Pos x=180, y=600) Tj
+
+ET
+endstream
+endobj
+
+5 0 obj
+<<
+ /Type /Font
+ /Subtype /Type1
+ /BaseFont /Helvetica
+>>
+endobj
+
+xref
+
+
+trailer
+<<
+ /Size 0
+ /Root 3 0 R
+>>
+
+startxref
+0
+
+%%EOF
+
\ No newline at end of file
diff --git a/fx/path/path_10_jd_expected.pdf.0.png b/fx/path/path_10_jd_expected.pdf.0.png
new file mode 100644
index 0000000..eb7bd46
--- /dev/null
+++ b/fx/path/path_10_jd_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/path_1_expected.pdf.0.png b/fx/path/path_1_expected.pdf.0.png
new file mode 100644
index 0000000..f1958c1
--- /dev/null
+++ b/fx/path/path_1_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/path_1_expected.pdf.1.png b/fx/path/path_1_expected.pdf.1.png
new file mode 100644
index 0000000..a4b5abd
--- /dev/null
+++ b/fx/path/path_1_expected.pdf.1.png
Binary files differ
diff --git a/fx/path/path_3.pdf b/fx/path/path_3.pdf
new file mode 100644
index 0000000..a5b3d23
--- /dev/null
+++ b/fx/path/path_3.pdf
Binary files differ
diff --git a/fx/path/path_3_expected.pdf.0.png b/fx/path/path_3_expected.pdf.0.png
new file mode 100644
index 0000000..968298b
--- /dev/null
+++ b/fx/path/path_3_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/path_3_expected.pdf.1.png b/fx/path/path_3_expected.pdf.1.png
new file mode 100644
index 0000000..7484af6
--- /dev/null
+++ b/fx/path/path_3_expected.pdf.1.png
Binary files differ
diff --git a/fx/path/path_4.pdf b/fx/path/path_4.pdf
new file mode 100644
index 0000000..ea8ee4d
--- /dev/null
+++ b/fx/path/path_4.pdf
Binary files differ
diff --git a/fx/path/path_4_expected.pdf.0.png b/fx/path/path_4_expected.pdf.0.png
new file mode 100644
index 0000000..a30b86b
--- /dev/null
+++ b/fx/path/path_4_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/path_4_expected.pdf.1.png b/fx/path/path_4_expected.pdf.1.png
new file mode 100644
index 0000000..11b314c
--- /dev/null
+++ b/fx/path/path_4_expected.pdf.1.png
Binary files differ
diff --git a/fx/path/path_5_pattern.pdf b/fx/path/path_5_pattern.pdf
new file mode 100644
index 0000000..485e297
--- /dev/null
+++ b/fx/path/path_5_pattern.pdf
@@ -0,0 +1,227 @@
+%PDF-1.7
+
+1 0 obj
+<<
+ /Type /Catalog
+ /Pages 2 0 R
+>>
+endobj
+
+2 0 obj
+<<
+ /Type /Pages
+ /Kids [3 0 R]
+ /Count 1
+>>
+endobj
+
+3 0 obj
+<<
+ /Type /Page
+ /Parent 2 0 R
+ /MediaBox [0 0 720 720]
+ /Contents [4 0 R]
+ /Resources 5 0 R
+
+>>
+endobj
+
+
+4 0 obj
+<<
+ /Length 0
+>>
+stream
+ BT
+ /F1 25 Tf 180 630 TD (Lesson10-Graphic4.6 Pattern-homework)Tj
+ /F1 18 Tf -60 -100 TD (ColorPattern)Tj
+ 280 0 TD (UnColorPattern)Tj
+ ET
+ q
+ 1 0 0 1 100 300 cm
+ 0.0 G
+ 0.5 0.5 0.5 rg
+ 25 175 175 -150 re f
+ /Pattern cs
+ /P1 scn
+ 99.92 49.92 m
+ 99.92 77.52 77.52 99.92 49.92 99.92 c
+ 22.32 99.92 -0.08 77.52 -0.08 49.92 c
+ -0.08 22.32 22.32 -0.08 49.92 -0.08 c
+ 77.52 -0.08 99.92 22.32 99.92 49.92 c
+ B
+ 224.96 49.92 m
+ 224.96 77.52 202.56 99.92 174.96 99.92 c
+ 147.36 99.92 124.96 77.52 124.96 49.92 c
+ 124.96 22.32 147.36 -0.08 174.96 -0.08 c
+ 202.56 -0.08 224.96 22.32 224.96 49.92 c
+ B
+ 87.56 201.70 m
+ 63.66 187.90 55.46 157.32 69.26 133.40 c
+ 83.06 109.50 113.66 101.30 137.56 115.10 c
+ 161.46 128.90 169.66 159.50 155.86 183.40 c
+ 142.06 207.30 111.46 215.50 87.56 201.70 c
+ B
+ 50 50 m
+ 175 50 l
+ 112.5 158.253 l
+ b
+ Q
+ q
+ 1 0 0 1 400 300 cm
+
+ 0.0 G
+ 1.0 1.0 0.0 rg
+ 25 175 175 -150 re
+ f
+ /Cs12 cs
+ 0.7 0.10 0.30 /P2 scn
+ 99.92 49.92 m
+ 99.92 77.52 77.52 99.92 49.92 99.92 c
+ 22.32 99.92 -0.08 77.52 -0.08 49.92 c
+ -0.08 22.32 22.32 -0.08 49.92 -0.08 c
+ 77.52 -0.08 99.92 22.32 99.92 49.92 c
+ B
+ 0.2 0.5 0.5 /P2 scn
+
+ 224.96 49.92 m
+ 224.96 77.52 202.56 99.92 174.96 99.92 c
+ 147.36 99.92 124.96 77.52 124.96 49.92 c
+ 124.96 22.32 147.36 -0.08 174.96 -0.08 c
+ 202.56 -0.08 224.96 22.32 224.96 49.92 c
+ B
+ 0.3 0.7 0.0 /P2 scn
+ 87.56 201.70 m
+ 63.66 187.90 55.46 157.32 69.26 133.40 c
+ 83.06 109.50 113.66 101.30 137.56 115.10 c
+ 161.46 128.90 169.66 159.50 155.86 183.40 c
+ 142.06 207.30 111.46 215.50 87.56 201.70 c
+ B
+ 0.8 0.0 1.0 /P2 scn
+ 50 50 m
+ 175 50 l
+ 112.5 158.253 l
+ b
+ Q
+
+
+endstream
+endobj
+
+5 0 obj
+<<
+ /ColorSpace <</Cs12 10 0 R>>
+ /Pattern <</P1 6 0 R
+
+ /P2 11 0 R>>
+>>
+endobj
+
+6 0 obj
+<<
+ /Type /Pattern %Pattern definition
+ /PatternType 1 %Tiling pattern
+ /PaintType 1 %Color Tiling pattern
+ /TilingType 2
+ /BBox [0 0 100 100] %Pattern µÄµ¥Ôª±ß½ç
+ /XStep 100 %Pattern µ¥ÔªµÄˮƽ¼ä¸ô
+ /YStep 100 %pattern µ¥ÔªµÄ´¹Ö±¼ä¸ô
+ /Resources 7 0 R %pattern ÄÚÈÝÁ÷µÄ×ÊÔ´×Öµä
+ /Matrix [0.3464 0.2 -0.2 0.3464 0.0 0.0]
+ /Length 0
+
+>>
+stream
+ BT
+
+ /F1 1 Tf
+ 64 0 0 64 7.1771 2.4414 Tm
+ 0 Tc
+ 0 Tw
+ 1.0 0.0 0.0 rg
+ (\001) Tj
+ 0.7478 -0.007 TD
+ 0.0 1.0 0.0 rg
+ (\002) Tj
+ -0.7323 0.7813 TD
+ 0.0 0.0 1.0 rg
+ (\003) Tj
+ 0.6913 0.007 TD
+ 0.0 0.0 0.0 rg
+ (\004) Tj
+ ET
+endstream
+endobj
+
+7 0 obj
+<<
+ /Font <</F1 8 0 R>>
+>>
+endobj
+
+8 0 obj
+<<
+ /Type /Font
+ /Subtype /Type1
+ /Encoding 9 0 R
+ /BaseFont /ZapfDingbats
+
+>>
+endobj
+
+9 0 obj
+<<
+ /Type /Encoding
+ /Differences [1 /a109 /a110 /a111 /a112]
+>>
+endobj
+
+%........uncolor pattern..........
+10 0 obj
+ [/Pattern /DeviceRGB]
+endobj
+
+11 0 obj
+<<
+ /Type /Pattern
+ /PatternType 1
+ /PaintType 2
+ /TilingType 2
+ /BBox [0 0 100 100]
+ /XStep 100
+ /YStep 100
+ /Resources 7 0 R %pattern ÄÚÈÝÁ÷µÄ×ÊÔ´×Öµä
+ /Matrix [0.4 0.0 0.0 0.4 0.0 0.0]
+ /Length 0
+
+>>
+stream
+ BT
+
+ /F1 1 Tf
+ 64 0 0 64 7.1771 2.4414 Tm
+ 0 Tc
+ 0 Tw
+ (\001) Tj
+ 0.7478 -0.007 TD
+ (\002) Tj
+ -0.7323 0.7813 TD
+ (\003) Tj
+ 0.6913 0.007 TD
+ (\004) Tj
+ ET
+endstream
+endobj
+
+
+
+xref
+trailer
+<<
+ /Size 0
+ /Root 1 0 R
+>>
+startxref
+0
+
+%%EOF
\ No newline at end of file
diff --git a/fx/path/path_5_pattern_expected.pdf.0.png b/fx/path/path_5_pattern_expected.pdf.0.png
new file mode 100644
index 0000000..ecbc1f6
--- /dev/null
+++ b/fx/path/path_5_pattern_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/path_6_graphics4.5.5.pdf b/fx/path/path_6_graphics4.5.5.pdf
new file mode 100644
index 0000000..ea66117
--- /dev/null
+++ b/fx/path/path_6_graphics4.5.5.pdf
@@ -0,0 +1,255 @@
+%PDF-1.7
+
+
+1 0 obj
+<<
+ /Type /Pages
+ /Kids [2 0 R]
+ /Count 1
+>>
+endobj
+
+2 0 obj
+<<
+ /Type /Page
+ /Parent 1 0 R
+ /MediaBox [0 0 720 720]
+ /Contents [4 0 R]
+ /Resources <<
+ /Font <</F1 5 0 R>>
+ /ColorSpace<<
+ /CS1 6 0 R /CS2 7 0 R /CS3 8 0 R /CS4 9 0 R
+ /CS5 11 0 R /CS6 12 0 R /CS7 14 0 R
+ >>
+ >>
+
+>>
+endobj
+3 0 obj
+<<
+ /Type /Catalog
+ /Pages 1 0 R
+>>
+
+endobj
+
+4 0 obj
+<<
+ /Length 0
+
+>> stream
+BT /F1 25 Tf 180 630 TD (Lesson9-Graphic4.5.5-homework)Tj
+/F1 15 Tf -130 -55 TD (DeviceRGB)Tj
+140 0 TD (DeviceCMYK)Tj
+140 0 TD (DeviceGray)Tj
+
+-280 -100 TD (CalGray)Tj
+140 0 TD (CalRGB)Tj
+140 0 TD (Lab)Tj
+140 0 TD (ICCBased)Tj
+
+-420 -100 TD (Indexed)Tj
+140 0 TD (Separation)Tj
+140 0 TD (DeviceN)Tj
+
+-280 -100 TD (K,k)Tj
+140 0 TD (RG,rg)Tj
+140 0 TD (G,g)Tj
+140 0 TD (CS,cs,SCN,scn)Tj
+140 0 TD (CS,cs,SC,sc)Tj
+ET
+
+q 1 0 0 1 0 500 cm
+/DeviceRGB cs 1 0 0.5 sc 50 0 70 60 re f
+
+/DeviceCMYK cs 1 0 0 0 sc 190 0 70 60 re f
+
+/DeviceGray cs 0.8 sc 330 0 70 60 re f
+Q
+
+q 1 0 0 1 0 400 cm
+/CS1 cs 0.5 sc 50 0 70 60 re f
+/CS2 cs 0 1 0 sc 190 0 70 60 re f
+/CS3 cs 20 30 50 sc 330 0 70 60 re f
+/CS4 cs 0.7 0.7 0.3 sc 470 0 70 60 re f
+Q
+
+q 1 0 0 1 0 300 cm
+/CS5 cs 2 sc 50 0 70 60 re f
+/CS6 cs 1 scn 190 0 70 60 re f
+/CS7 cs 1 0 scn 330 0 70 60 re f
+Q
+% K,k
+q 1 0 0 1 0 200 cm
+0 1 0 0 K
+1 0 0 0 k
+50 0 70 60 re b
+Q
+%RG,rg
+q 1 0 0 1 0 200 cm
+0 1 0 RG
+0 0 1 rg
+190 0 70 60 re b
+Q
+% G,g
+q 1 0 0 1 0 200 cm
+0.1 G
+0.8 g
+330 0 70 60 re b
+Q
+% cs,CS,SCN,scn
+
+q 1 0 0 1 0 200 cm
+/DeviceRGB cs
+/DeviceRGB CS
+1 1 0 scn
+1 0 0 SCN
+470 0 70 60 re B
+Q
+
+% cs,CS, sc,SC
+q 1 0 0 1 0 200 cm
+/DeviceCMYK cs
+/DeviceCMYK CS
+1 0.5 0.5 0 sc
+0 1 1 0 SC
+610 0 70 60 re B
+Q
+
+endstream
+endobj
+
+5 0 obj
+<<
+ /Type /Font
+ /Subtype /Type1
+ /BaseFont /Helvetica
+>>
+endobj
+
+
+6 0 obj
+[ /CalGray %CalgrayÑÕÉ«¿Õ¼ä
+<< /WhitePoint [ 0.9505 1.0000 1.0890 ] >>
+]
+endobj
+
+7 0 obj
+[/CalRGB %CalRGBÑÕÉ«¿Õ¼ä
+<< %CalRGBÑÕÉ«¿Õ¼ä´Êµä
+/WhitePoint [ 0.9505 1.0000 1.0890 ]
+/Gamma [ 1.8000 1.8000 1.8000]
+/Matrix [ 0.4497 0.2446 0.0252 0.3163 0.6720 0.1412 0.1845 0.0833 0.9227 ]
+>>]
+endobj
+
+8 0 obj
+[ /Lab %CIEL*a*b*ÑÕÉ«¿Õ¼ä
+<< /WhitePoint [0.9505 1.0000 1.0890 ]
+/Range [ -128 127 -128 127 ]
+>>
+]
+endobj
+
+9 0 obj %Color space
+[/ICCBased 10 0 R ]
+endobj
+
+10 0 obj %ICC profile stream
+<< /N 3
+%/Alternate /DeviceRGB
+/Length 0
+/Filter /ASCIIHexDecode
+>>
+stream
+00 00 02 0C 61 70 70 6C 02 00 00 00 6D 6E 74 72
+52 47 42 20 58 59 5A 20 07 CB 00 02 00 16 00 0E
+00 22 00 2C 61 63 73 70 41 50 50 4C 00 00 00 00
+61 70 70 6C 00 00 04 01 00 00 00 00 00 00 00 02
+00 00 00 00 00 00 F6 D4 00 01 00 00 00 00 D3 2B
+00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+00 00 00 09 64 65 73 63 00 00 00 F0 00 00 00 71
+72 58 59 5A 00 00 01 64 00 00 00 14 67 58 59 5A
+00 00 01 78 00 00 00 14 62 58 59 5A 00 00 01 8C
+00 00 00 14 72 54 52 43 00 00 01 A0 00 00 00 0E
+67 54 52 43 00 00 01 B0 00 00 00 0E 62 54 52 43
+00 00 01 C0 00 00 00 0E 77 74 70 74 00 00 01 D0
+00 00 00 14 63 70 72 74 00 00 01 E4 00 00 00 27
+64 65 73 63 00 00 00 00 00 00 00 17 41 70 70 6C
+65 20 31 33 22 20 52 47 42 20 53 74 61 6E 64 61
+72 64 00 00 00 00 00 00 00 00 00 00 00 17 41 70
+70 6C 65 20 31 33 22 20 52 47 42 20 53 74 61 6E
+64 61 72 64 00 00 00 00 00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+00 58 59 5A 58 59 5A 20 00 00 00 00 00 00 63 0A
+00 00 35 0F 00 00 03 30 58 59 5A 20 00 00 00 00
+00 00 53 3D 00 00 AE 37 00 00 15 76 58 59 5A 20
+00 00 00 00 00 00 40 89 00 00 1C AF 00 00 BA 82
+63 75 72 76 00 00 00 00 00 00 00 01 01 CC 63 75
+63 75 72 76 00 00 00 00 00 00 00 01 01 CC 63 75
+63 75 72 76 00 00 00 00 00 00 00 01 01 CC 58 59
+58 59 5A 20 00 00 00 00 00 00 F3 1B 00 01 00 00
+00 01 67 E7 74 65 78 74 00 00 00 00 20 43 6F 70
+79 72 69 67 68 74 20 41 70 70 6C 65 20 43 6F 6D
+70 75 74 65 72 73 20 31 39 39 34 00 >
+endstream
+endobj
+
+11 0 obj
+[/Indexed /DeviceRGB 4 <000000 010101 445522 FF0000 558866>]
+endobj
+
+12 0 obj % Color space
+[ /Separation %ÑÕÉ«¿Õ¼ä×åÃû
+/LogoGreen %×ÅÉ«¼ÁµÄÃû×Ö
+/DeviceCMYK %±êʶÁË¿ÉÑ¡ÑÕÉ«¿Õ¼ä
+13 0 R %É«²Êת»»º¯Êý
+]
+endobj
+
+13 0 obj %transformation function
+<< /FunctionType 4
+/Domain [0.0 1.0]
+/Range [ 0.0 1.0 0.0 1.0 0.0 1.0 0.0 1.0 ]
+/Length 62
+>>stream
+{ dup 0.84 mul
+exch 0.00 exch dup 0.44 mul
+exch 0.21 mul
+}
+endstream
+endobj
+
+14 0 obj
+[/DeviceN
+ [/Cyan /Black]
+ /DeviceCMYK
+ 15 0 R
+]
+endobj
+
+15 0 obj
+<<
+/FunctionType 4
+/Domain [0.0 1.0 0.0 1.0]
+/Range [0.0 1.0 0.0 1.0 0.0 1.0 0.0 1.0 ]
+/Length 0
+>>stream
+{0 0 3 -1 roll}
+endstream
+endobj
+
+
+xref
+trailer
+<<
+ /Size 0
+ /Root 3 0 R
+>>
+startxref
+0
+
+%%EOF
\ No newline at end of file
diff --git a/fx/path/path_6_graphics4.5.5_expected.pdf.0.png b/fx/path/path_6_graphics4.5.5_expected.pdf.0.png
new file mode 100644
index 0000000..5dc50f5
--- /dev/null
+++ b/fx/path/path_6_graphics4.5.5_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/path_7.pdf b/fx/path/path_7.pdf
new file mode 100644
index 0000000..1f23021
--- /dev/null
+++ b/fx/path/path_7.pdf
@@ -0,0 +1,474 @@
+%PDF-1.5
+
+1 0 obj
+<<
+ /Type /Pages
+ /Kids [2 0 R 8 0 R]
+ /Count 2
+>>
+endobj
+
+2 0 obj
+<<
+ /Type /Page
+ /Parent 1 0 R
+ /MediaBox [0 0 612 792]
+ /Contents 4 0 R
+ /Resources <<
+ /Font <</F1 5 0 R>>
+ /ExtGState<</G1 6 0 R>>
+ >>
+
+>>
+endobj
+
+8 0 obj
+<<
+ /Type /Page
+ /Parent 1 0 R
+ /MediaBox [0 0 612 792]
+ /Contents 9 0 R
+ /Resources <<
+ /Font <</F1 5 0 R>>
+ /ExtGState<</G2 10 0 R /G3 11 0 R>>
+ >>
+>>
+endobj
+
+3 0 obj
+<<
+ /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+
+4 0 obj
+<<
+ /Length 0
+
+>> stream
+%%%%%%%%%line width
+
+
+q
+1 0 0 1 0 620 cm
+10 w % set line width 10
+%1 0 0 RG
+%1 0 0 rg
+BT
+/F1 80 Tf
+0 1 0 RG 0 1 0 rg
+300 0 Td 2 Tr (Hello) Tj % fill, and then stroke text
+0 -80 Td 0 Tr (Hello)Tj
+ET
+
+0 0 0 RG
+1 w 10 0 40 40 re S
+
+0 w 70 0 40 40 re S
+1 w
+q
+4 0 0 1 10 -60 cm
+0 0 40 40 re S
+Q
+
+BT
+/F1 20 Tf
+10 60 Td (Line Width)Tj
+/F1 15 Tf
+0 -15 Td (1 w) Tj
+60 0 Td (0 w) Tj
+-60 -60 Td (1 w 4 1 Scale) Tj
+0 0 0 rg % change fill color
+200 60 Td (fill and stroke) Tj
+40 -15 Td (10 w) Tj
+10 -80 Td (fill) Tj
+/F1 50 Tf
+-130 150 Td (Graphic State)Tj
+ET
+Q
+
+%%%%%%%%%%%%%%%line cap & line join
+% J j
+0.5 0.5 0.5 RG
+0.5 0.6 0.5 rg
+q
+15 w
+1 0 0 1 0 420 cm
+0 j 1 J
+50 0 m 80 50 l 110 0 l
+S
+
+1 j 0 J
+180 0 m 210 50 l 240 0 l S
+
+2 j 2 J
+310 0 m 340 50 l 370 0 l S
+
+1 w 2 j 2 J
+0 1 0 RG
+310 0 m 340 50 l 370 0 l S
+180 0 m 210 50 l 240 0 l S
+50 0 m 80 50 l 110 0 l S
+
+BT
+/F1 20 Tf
+5 90 Td
+(LineJoin: j && LineCap: J)Tj
+/F1 15 Tf
+30 -30 Td (0 j 1 J) Tj
+130 0 Td (1 j 0 J)Tj
+130 0 Td (2 j 2 J) Tj
+ET
+Q
+
+%/G1 gs
+%%%%%%%%%%%%%%%%MiterLimit
+q
+1 0 0 1 0 250 cm
+10 w
+100 M 30 0 m 35 50 l 40 0 l S
+10 M 70 0 m 75 50 l 80 0 l S
+2 j 110 0 m 115 50 l 120 0 l S 0 j
+
+170 0 m 190 50 l 210 0 l S
+2 M 230 0 m 250 50 l 270 0 l S
+2 j 290 0 m 310 50 l 330 0 l S 0 j
+
+380 0 m 410 50 l 440 0 l S
+1.414 M 460 0 m 490 50 l 520 0 l S
+2 j 540 0 m 570 50 l 600 0 l S 0 j
+
+
+q
+1 w
+0 1 0 RG
+30 0 m 35 50 l 40 0 l S
+70 0 m 75 50 l 80 0 l S
+110 0 m 115 50 l 120 0 l S
+170 0 m 190 50 l 210 0 l S
+230 0 m 250 50 l 270 0 l S
+290 0 m 310 50 l 330 0 l S
+380 0 m 410 50 l 440 0 l S
+460 0 m 490 50 l 520 0 l S
+540 0 m 570 50 l 600 0 l S
+Q
+
+BT
+/F1 20 Tf
+5 130 Td
+(MiterLimit: M. 10M~11.5 2M~60 1.414M~90(degree)) Tj
+0 -25 Td (100 M) Tj
+40 -40 Td (10 M) Tj
+55 0 Td (2 j) Tj
+60 10 Td (10 M) Tj
+70 0 Td (2 M) Tj
+70 0 Td (2 j) Tj
+90 0 Td (2 M) Tj
+60 0 Td (1.414 M)Tj
+105 0 Td (2 j) Tj
+ET
+
+Q
+%%%%%%%%%%%%%%Dash Pattern
+q
+10 w
+[] 0 d 5 190 m 150 190 l S
+2 J [20] 24 d 5 170 m 150 170 l S
+0 J [20] 24 d 5 150 m 150 150 l S
+1 J [20] 24 d 5 130 m 150 130 l S
+0 J 1 j [2] 0 d 350 150 50 50 re S
+[2] 0 d 420 150 40 40 re S
+50 w
+[1 2 5 7 8 1 4 5 12 4 5] 0 d 5 50 m 200 50 l S
+
+q
+1 w 0 1 0 RG
+[] 0 d 5 190 m 150 190 l S
+[3] 0 d 5 170 m 150 170 l S
+[2] 1 d 5 150 m 150 150 l S
+[3 5] 6 d 5 130 m 150 130 l S
+[2] 0 d
+350 150 50 50 re S
+420 150 40 40 re S
+Q
+BT
+/F1 20 Tf
+5 210 Td (Line Dash Pattern: d. Solid) Tj
+/F1 15 Tf
+170 -20 Td (0 J [] 0 d)Tj
+0 -20 Td (2 J [20] 24 d [3] 0 d) Tj
+0 -20 Td (0 J [20] 24 d [2] 1 d) Tj
+0 -20 Td (1 J [20] 24 d [3 5] 6 d) Tj
+150 80 Td([2] 0 d 50*50) Tj
+100 0 Td (40*40) Tj
+-200 -150 Td ([1 2 5 7 8 1 4 5 12 4 5] 0 d) Tj
+ET
+Q
+
+endstream
+endobj
+
+9 0 obj
+<<
+ /Length 0
+>>
+stream
+q
+1 0 0 1 0 650 cm
+5 0 m 25 40 l 45 0 l S
+70 0 m 90 40 l 110 0 l s
+135 0 m 155 40 l 175 0 l h S
+200 0 m 220 40 l 240 0 l h 200 40 l S
+[2] 1 d 270 0 m 290 40 310 40 330 0 c S [] 0 d
+360 0 m 400 40 420 0 v S
+450 0 m 470 40 510 0 y S
+ % show text
+BT
+/F1 20 Tf
+5 105 Td (Path Construction: m re; l c v y h ) Tj
+0 -25 Td (Path Painting: S s f f* B B* b b* n) Tj
+/F1 15 Tf
+10 -35 Td (S) Tj
+65 0 Td (s) Tj
+60 0 Td (h S) Tj
+55 0 Td (h l S)Tj
+100 0 Td (c)Tj
+60 0 Td (v p1=P0)Tj
+90 0 Td (y P2=P3)Tj
+
+ET
+Q
+ %%%%%%fill
+q
+1 0 0 1 0 500 cm
+0.5 0.5 0.5 rg
+17 0 m 50 95 l 80 0 l 0 60 l 96 60 l h f %% draw pentagon
+q
+1 0 0 RG 17 0 m 50 95 l S %% draw first line
+0 1 0 RG 50 95 m 80 0 l S %% draw second line
+0 0 1 RG 80 0 m 0 60 l S %% draw third line
+1 1 0 RG 0 60 m 96 60 l S %% draw fourth line
+1 0 1 RG 96 60 m 17 0 l S %% draw fifth line
+Q
+q
+1 0 0 1 100 0 cm 17 0 m 50 95 l 80 0 l 0 60 l 96 60 l h f*
+q
+1 0 0 RG 17 0 m 50 95 l S %% draw first line
+0 1 0 RG 50 95 m 80 0 l S %% draw second line
+0 0 1 RG 80 0 m 0 60 l S %% draw third line
+1 1 0 RG 0 60 m 96 60 l S %% draw fourth line
+1 0 1 RG 96 60 m 17 0 l S %% draw fifth line
+Q
+
+1 0 0 1 150 50 cm %% draw doughnut
+0 40 m 22.08 40 40 22.08 40 0 c
+40 -22.08 22.08 -40 0 -40 c
+-22.08 -40 -40 -22.08 -40 0 c
+-40 22.08 -22.08 40 0 40 c h
+
+0 20 m 11.04 20 20 11.04 20 0 c
+20 -11.04 11.04 -20 0 -20 c
+-11.04 -20 -20 -11.04 -20 0 c
+-20 11.04 -11.04 20 0 20 c h B*
+q
+1 0 0 RG 0 40 m 22.08 40 40 22.08 40 0 c S %% draw first line
+0 1 0 RG 40 0 m 40 -22.08 22.08 -40 0 -40 c S %% draw second line
+0 0 1 RG 0 -40 m -22.08 -40 -40 -22.08 -40 0 c S %% draw third line
+1 1 0 RG -40 0 m -40 22.08 -22.08 40 0 40 c S %% draw fourth line
+
+1 0 0 RG 0 20 m 11.04 20 20 11.04 20 0 c S %% draw first line
+0 1 0 RG 20 0 m 20 -11.04 11.04 -20 0 -20 c S %% draw second line
+0 0 1 RG 0 -20 m -11.04 -20 -20 -11.04 -20 0 c S %% draw third line
+1 1 0 RG -20 0 m -20 11.04 -11.04 20 0 20 c S %% draw fourth line
+Q
+
+1 0 0 1 100 0 cm
+0 40 m 22.08 40 40 22.08 40 0 c
+40 -22.08 22.08 -40 0 -40 c
+-22.08 -40 -40 -22.08 -40 0 c
+-40 22.08 -22.08 40 0 40 c h
+
+0 20 m 11.04 20 20 11.04 20 0 c
+20 -11.04 11.04 -20 0 -20 c
+-11.04 -20 -20 -11.04 -20 0 c
+-20 11.04 -11.04 20 0 20 c h B
+q
+1 0 0 RG 0 40 m 22.08 40 40 22.08 40 0 c S %% draw first line
+0 1 0 RG 40 0 m 40 -22.08 22.08 -40 0 -40 c S %% draw second line
+0 0 1 RG 0 -40 m -22.08 -40 -40 -22.08 -40 0 c S %% draw third line
+1 1 0 RG -40 0 m -40 22.08 -22.08 40 0 40 c S %% draw fourth line
+
+1 0 0 RG 0 20 m 11.04 20 20 11.04 20 0 c S %% draw first line
+0 1 0 RG 20 0 m 20 -11.04 11.04 -20 0 -20 c S %% draw second line
+0 0 1 RG 0 -20 m -11.04 -20 -20 -11.04 -20 0 c S %% draw third line
+1 1 0 RG -20 0 m -20 11.04 -11.04 20 0 20 c S %% draw fourth line
+Q
+
+0.5 0.6 0.5 rg
+1 0 0 1 100 0 cm
+0 20 m -11.04 20 -20 11.04 -20 0 c
+-20 -11.04 -11.04 -20 0 -20 c
+11.04 -20 20 -11.04 20 0 c
+20 11.04 11.04 20 0 20 c h
+
+0 40 m 22.08 40 40 22.08 40 0 c
+40 -22.08 22.08 -40 0 -40 c
+-22.08 -40 -40 -22.08 -40 0 c
+-40 22.08 -22.08 40 0 40 c h B
+q
+1 0 0 RG 0 40 m 22.08 40 40 22.08 40 0 c S %% draw first line
+0 1 0 RG 40 0 m 40 -22.08 22.08 -40 0 -40 c S %% draw second line
+0 0 1 RG 0 -40 m -22.08 -40 -40 -22.08 -40 0 c S %% draw third line
+1 1 0 RG -40 0 m -40 22.08 -22.08 40 0 40 c S %% draw fourth line
+
+1 0 0 RG 0 20 m -11.04 20 -20 11.04 -20 0 c S %% draw first line
+0 1 0 RG -20 0 m -20 -11.04 -11.04 -20 0 -20 c S %% draw second line
+0 0 1 RG 0 -20 m 11.04 -20 20 -11.04 20 0 c S %% draw third line
+1 1 0 RG 20 0 m 20 11.04 11.04 20 0 20 c S %% draw fourth line
+Q
+
+Q
+
+BT
+/F1 15 Tf
+20 100 Td (None-Zero)Tj
+100 0 Td (Even-Odd)Tj
+100 0 Td (Even-Odd)Tj
+100 0 Td (None-Zero)Tj
+100 0 Td (None-Zero)Tj
+ET
+Q %% path construction
+
+%% clipping
+q
+1 0 0 1 0 445 cm
+BT
+/F1 15 Tf
+140 5 Td (Fill Path, set Clipping and show text inside the Clipping) Tj
+ET
+0 1 0 rg
+5 0 120 20 re W f
+.5 .5 .5 rg
+BT
+/F1 20 Tf
+5 5 Td (Clipping Path) Tj
+ET
+Q
+
+q
+1 0 0 1 0 410 cm
+BT
+/F1 15 Tf
+140 5 Td (Stroke Path, set Clipping and show text ) Tj
+ET
+1 1 0 RG
+4 w
+5 0 100 20 re
+W S
+.5 .5 .5 rg
+BT
+/F1 20 Tf
+5 5 Td (Clipping Path) Tj
+ET
+Q
+
+q
+1 0 0 1 0 350 cm
+BT
+/F1 15 Tf
+130 15 Td (Fill and Stroke Path, set Clipping and fill path object) Tj
+ET
+/G3 gs
+%/G2 gs
+0 1 0 rg 1 1 0 RG
+10 10 50 20 re W B
+.5 .5 .5 rg 0 0 0 RG
+10 10 40 20 re f
+Q
+
+q
+1 0 0 1 0 300 cm
+BT
+/F1 15 Tf
+130 20 Td (No-op for Path, set Clipping and fill path object) Tj
+ET
+0 1 0 rg 1 1 0 RG
+10 10 50 20 re W n
+.5 .5 .5 rg 0 0 0 RG
+10 10 40 20 re f
+Q
+
+q
+2 0 0 1 200 300 cm
+10 0 m 60 0 l 60 50 l 10 50 l h
+ W n
+0 1 0 rg
+%10 0 60 60 re f
+Q
+
+
+%%end clipping path
+endstream
+endobj
+5 0 obj
+<<
+ /Type /Font
+ /Subtype /Type1
+ /BaseFont /Helvetica
+>>
+endobj
+
+6 0 obj
+<<
+/Type /ExtGState
+/SA true
+/LW 10
+/TR 7 0 R
+>>
+endobj
+
+10 0 obj
+<<
+/Type /ExtGState
+/LW 10
+>>
+endobj
+11 0 obj
+<<
+/Type /ExtGState
+/LW 5
+>>
+
+7 0 obj
+<<
+/FunctionType 0
+/Domain [0.0 1.0]
+/Range [0.0 1.0]
+/Size 2
+/BitPerSample 8
+/Length 7
+/Filter /ASCIIHexDecode
+>>
+stream
+01 00 >
+endstream
+endobj
+
+
+
+
+xref
+
+
+trailer
+<<
+ /Size 0
+ /Root 3 0 R
+>>
+
+startxref
+0
+
+%%EOF
+
\ No newline at end of file
diff --git a/fx/path/path_7_expected.pdf.0.png b/fx/path/path_7_expected.pdf.0.png
new file mode 100644
index 0000000..9366f70
--- /dev/null
+++ b/fx/path/path_7_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/path_7_expected.pdf.1.png b/fx/path/path_7_expected.pdf.1.png
new file mode 100644
index 0000000..225fac5
--- /dev/null
+++ b/fx/path/path_7_expected.pdf.1.png
Binary files differ
diff --git a/fx/path/path_9.pdf b/fx/path/path_9.pdf
new file mode 100644
index 0000000..6d1428e
--- /dev/null
+++ b/fx/path/path_9.pdf
@@ -0,0 +1,173 @@
+%PDF-1.7
+
+1 0 obj
+<<
+ /Type /Pages
+ /Kids [2 0 R]
+ /Count 1
+>>
+endobj
+
+2 0 obj
+<<
+ /Type /Page
+ /Parent 1 0 R
+ /MediaBox [0 0 531 666]
+ /Contents [4 0 R]
+ /Resources <<
+ /Font <</F1 5 0 R>>
+ /ExtGState<</G1 6 0 R>>
+ >>
+>>
+endobj
+
+3 0 obj
+<<
+ /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+
+5 0 obj
+<<
+ /Type /Font
+ /Subtype /Type1
+ /BaseFont /Helvetica
+>>
+endobj
+
+6 0 obj % Graphics State Parameter Dictionaries
+<<
+/Type /ExtGState
+/LW 5 % Line Width = 5
+/LJ 0 % Line Join Style = Miter Join
+ % Miter Join (0 j) Round join (1 j)
+/LC 1 % Line Cap Style = Round cap
+ % Butt cap (0 J) Round cap (1 J) Projecting square cap (2 J)
+/ML 2 % Miter Limit = 2
+/D [[10 15] 2] % Line Dash Pattern: 10 units on, 15 units off, 2 units offset
+/CA 0.5 % Stroking alpha = 0.5
+/ca 0.5 % Nonstrking alpha = 0.5
+>>
+endobj
+
+4 0 obj
+<<
+ /Length 0
+
+>> stream
+
+%Homework1: line cap & line join
+q
+0.5 0.5 0.5 RG
+0.5 0.6 0.5 rg
+5 w % Line Width = 5
+0 j % Line Join Style = Miter Join
+ % Miter Join (0 j) Round join (1 j)
+1 J % Line Cap Style = Round cap
+ % Butt cap (0 J) Round cap (1 J) Projecting square cap (2 J)
+2 M % Miter Limit = 2
+[10 8] 1 d % Line Dash Pattern: 10 units on, 8 units off, 1 units offset
+50 590 m
+70 640 l
+90 590 l
+S
+BT
+/F1 10 Tf
+20 570 Td
+(Line Width = 5, Line Join = Miter Join, Line Cap = Round Cap, Miter Limit = 2) Tj %% Tj: Show Text
+0 -10 Td
+(Line Dash Patten: 10 units on, 8 units off, 1 units offset) Tj %% Tj: Show Text
+0 90 Td
+(Homework1: line cap & line join) Tj %% Tj: Show Text
+ET
+Q
+
+%Homework2: Graphics State Parameter Dictionaries
+q
+/G1 gs
+0 1 0 RG
+1 0 0 rg
+20 300 200 200 re
+b
+BT
+/F1 10 Tf
+20 510 Td
+(Graphics State Parameter Dictionaries:) Tj
+0 10 Td
+(Homework2:) Tj
+ET
+Q
+
+%Homework3: Text Clipping
+q
+
+BT
+/F1 10 Tf
+250 510 Td
+(Homework3: Text Clipping) Tj
+ET
+
+1 0 0 1 250 465 cm
+BT %% BT:begin Text; ET: end Text
+/F1 50 Tf %% select font; set font;
+7 Tr %% Text rendering modes 7; Add text to path for clipping
+0 0 Td
+(Hello World!) Tj %% Tj: Show Text
+ET
+
+1 0 0 rg
+0 0 50 50 re f
+
+0 1 0 rg
+50 0 50 50 re f
+
+0 0 1 rg
+100 0 50 50 re f
+
+1 1 0 rg
+150 0 50 50 re f
+
+0 1 1 rg
+200 0 50 50 re f
+
+1 0 1 rg
+250 0 50 50 re f
+Q
+
+%Homework4: Bezier Curve
+q
+0 0.5 0.5 rg
+0.5 0.5 1 RG
+BT
+/F1 10 Tf
+20 266 Td
+(Homework4: Bezier Curve) Tj
+ET
+
+1 0 0 1 -240 230 cm
+270 0 m 290 40 310 40 330 0 c S
+360 0 m 400 40 420 0 v S
+450 0 m 470 40 510 0 y S
+Q
+
+
+endstream
+endobj
+
+
+
+xref
+
+
+trailer
+<<
+ /Size 0
+ /Root 3 0 R
+>>
+
+startxref
+0
+
+%%EOF
+
\ No newline at end of file
diff --git a/fx/path/path_9_expected.pdf.0.png b/fx/path/path_9_expected.pdf.0.png
new file mode 100644
index 0000000..02349ef
--- /dev/null
+++ b/fx/path/path_9_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/pentagon.pdf b/fx/path/pentagon.pdf
new file mode 100644
index 0000000..cdbefdf
--- /dev/null
+++ b/fx/path/pentagon.pdf
@@ -0,0 +1,144 @@
+%PDF-1.4
+
+1 0 obj
+<<
+ /Type /Catalog
+ /Outlines 6 0 R
+ /Pages 2 0 R
+>>
+endobj
+
+
+
+
+2 0 obj
+<<
+ /Type /Pages
+ /Kids [3 0 R]
+ /Count 1
+>>
+endobj
+
+
+
+
+3 0 obj
+<<
+ /Type /Page
+ /Parent 2 0 R
+ /MediaBox [-50 -300 300 300]
+ /Contents 4 0 R
+ /Resources << /Font<</Font1 5 0 R>> >>
+>>
+endobj
+
+4 0 obj
+<<
+ /Length 0
+>>stream
+%======================================
+ q
+ %------draw pentagon, nonzero winding number rule
+ 0 1 0 RG
+ 1 0 0 rg
+ 5 w
+ 200 35 m
+ 160 160 l
+ 265 85 l
+ 135 85 l
+ 240 160 l
+ b %(h f S)
+
+ %------draw pentagon, even-odd rule
+ 1 0 0 1 0 -150 cm % move coordinate 0 by x, -150 by y
+ 0 1 0 RG
+ 1 0 0 rg
+ 1 j
+ 5 w
+ 200 35 m
+ 160 160 l
+ 265 85 l
+ 135 85 l
+ 240 160 l
+ b* %(h f* S)
+
+
+ %-----------draw circle, nonzero winding number rule.(two circle wind in same direction)
+ 1 0 0 1 -200 -100 cm
+ 1 w
+ 264.919 342.306 m
+ 272.672 342.306 278.959 336.019 278.959 328.265 c
+ 278.959 320.511 272.672 314.225 264.919 314.225 c
+ 257.164 314.225 250.878 320.511 250.878 328.265 c
+ 250.878 336.019 257.164 342.306 264.919 342.306 c
+
+
+ 264.919 358.614 m
+ 281.679 358.614 295.267 345.026 295.267 328.265 c
+ 295.267 311.504 281.679 297.916 264.919 297.916 c
+ 248.157 297.916 234.569 311.504 234.569 328.265 c
+ 234.569 345.026 248.157 358.614 264.919 358.614 c
+ b
+
+ %---------draw circle, even-odd rule.(two circle wind in same direction)
+ 1 0 0 1 0 -100 cm
+ 0 0 1 rg %blue
+ 264.919 342.306 m
+ 272.672 342.306 278.959 336.019 278.959 328.265 c
+ 278.959 320.511 272.672 314.225 264.919 314.225 c
+ 257.164 314.225 250.878 320.511 250.878 328.265 c
+ 250.878 336.019 257.164 342.306 264.919 342.306 c
+
+
+ 264.919 358.614 m
+ 281.679 358.614 295.267 345.026 295.267 328.265 c
+ 295.267 311.504 281.679 297.916 264.919 297.916 c
+ 248.157 297.916 234.569 311.504 234.569 328.265 c
+ 234.569 345.026 248.157 358.614 264.919 358.614 c
+ b*
+
+
+ Q
+%======================================
+endstream
+endobj
+
+
+
+6 0 obj
+<<
+ /Type /Outlines
+ /First 7 0 R
+ /Last 7 0 R
+ /Count 1
+>>
+endobj
+
+
+
+
+7 0 obj
+<<
+ /Title (example page)
+ /Parent 6 0 R
+ /Dest [3 0 R /Fit]
+>>
+endobj
+
+
+
+
+xref
+
+
+trailer
+<<
+ /Size 0
+ /Root 1 0 R
+>>
+
+
+startxref
+0
+
+%%EOF
\ No newline at end of file
diff --git a/fx/path/pentagon_expected.pdf.0.png b/fx/path/pentagon_expected.pdf.0.png
new file mode 100644
index 0000000..6d7e4e0
--- /dev/null
+++ b/fx/path/pentagon_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/transparent.pdf b/fx/path/transparent.pdf
new file mode 100644
index 0000000..5cd8140
--- /dev/null
+++ b/fx/path/transparent.pdf
Binary files differ
diff --git a/fx/path/transparent1.pdf b/fx/path/transparent1.pdf
new file mode 100644
index 0000000..2914a30
--- /dev/null
+++ b/fx/path/transparent1.pdf
Binary files differ
diff --git a/fx/path/transparent1_expected.pdf.0.png b/fx/path/transparent1_expected.pdf.0.png
new file mode 100644
index 0000000..6d9c862
--- /dev/null
+++ b/fx/path/transparent1_expected.pdf.0.png
Binary files differ
diff --git a/fx/path/transparent_expected.pdf.0.png b/fx/path/transparent_expected.pdf.0.png
new file mode 100644
index 0000000..033e416
--- /dev/null
+++ b/fx/path/transparent_expected.pdf.0.png
Binary files differ