Thành phần đầu tiên (Objects) là tập hợp các kiểu đối tượng cơ bản được PDF sử dụng để minh họa các đối tượng. Các kiểu này, trừ một ít ngoại lệ, phụ thuộc vào các kiểu dữ liệu được sử dụng trong ngơn ngữ PostScript.
Thành phần thứ hai (File structure) là cấu trúc tập tin PDF. Cấu trúc tập tin chỉ
định các đối tượng sẽ được lưu trữ trong một tập tin PDF, cách truy cập và cập nhật
chúng như thế nào. Cấu trúc này độc lập với ngữ nghĩa của các đối tượng.
Thành phần thứ ba (Document structure) là cấu trúc PDF. Cấu trúc này tài liệu chỉ định các kiểu đối tượng cơ bản được sử dụng để biểu diễn các thành phần của một tài liệu PDF: các trang, các chú thích, các siêu liên kết, các phơng chữ.
Thành phần thứ tư (và cũng là thành phần cuối cùng) (Page Description) là mơ tả trang PDF. Một mơ tả trang PDF, khi là thành phần của một đối tượng khác, cĩ
thể được diễn giải độc lập với các thành phần khác. Một mơ tả trang chỉ cĩ tương
tác bị giới hạn với các phần khác của một tài liệu PDF. Điều này sẽ đơn giản hĩa việc chuyển đổi nĩ sang định dạng PostScript.
30
2.1.2.8 SVG
SVG (Scalable Vector Graphics) là một định dạng mới và mở hồn tồn được Tổ chức W3C (World Wide Web Consortium) khuyến khích sử dụng và phát triển. SVG cĩ tất cả các ưu điểm của Flash (một chuẩn khơng chính thức hiện nay) cộng thêm các tính năng sau: các phơng chữ nhúng, ngơn ngữ đánh dấu cĩ khả năng mở rộng (XML), các trang định kiểu (CSS), khả năng tương tác và hoạt ảnh. Với sự hỗ trợ của DOM (Document Object Model), SVG hồn tồn tương thích với HTML.
SVG là một chuẩn độc lập nhà sản xuất và miễn phí, được phát triển theo quy trình của W3C. Nĩ được hỗ trợ mạnh từ các ngành cơng nghiệp khác nhau. Đặc tả SVG được tạo ra từ sự hợp tác của các hãng sản xuất tầm cỡ như include Adobe,
Agfa, Apple, Canon, Corel, Ericsson, HP, IBM, Kodak, Macromedia, Microsoft, Nokia, Sharp và Sun Microsystems. Các bộ hiển thị SVG được phân phối đến hơn
100 triệu máy tính để bàn (desktop). Bên cạnh đĩ, nĩ được hỗ trợ từ rất nhiều các cơng cụ soạn thảo.
SVG là một hệ nền cho đồ họa hai chiều. Nĩ gồm hai phần: một định dạng tập tin dựa trên XML và một giao diện lập trình API cho các ứng dụng đồ họa. Các
chức năng chính gồm cĩ các vật thể hình học, văn bản và đồ họa ảnh quét được nhúng, với nhiều kiểu vẽ khác nhau. Nĩ hỗ trợ các ngơn ngữ như ECMAScript và cĩ các hỗ trợ thơng minh cho hoạt ảnh.
SVG được sử dụng trong nhiều lĩnh vực kinh doanh, bao gồm đồ họa Web,
hoạt ảnh, các giao diện người dùng, trao đổi đồ họa, in ấn, ứng dụng cho thiết bị di
động và thiết kế chất lượng cao.
SVG được xây dựng trên nhiều chuẩn thành cơng khác chẳng hạn như:
• XML (đồ họa SVG là dạng dựa trên văn bản và do đĩ rất dễ tạo)
• JPEG và PNG cho các định dạng ảnh
• DOM cho phần viết kịch bản (script) và tương tác
• SMIL cho hoạt ảnh
31
SVG cĩ khả năng tương tác. W3C cĩ nhiệm vụ đưa ra một bộ kiểm tra và các kết quả cài đặt để đảm bảo tính tương thích.
Các ứng dụng của SVG trong cơng nghiệp
• Thiết bị di động
Trong năm 2001, ngành cơng nghiệp điện thoại di động đã chọn SVG là cơ sở cho hệ nền đồ họa của mình.Nhiều cơng ty hàng đầu đã tham gia vào nỗ lực phát triển SVG để tạo ra tập tin đặc tả hiện trang cho bộ SVG Tiny và bộ SVG Basic. SVG Tiny và SVG Basic là hai tập con của tập đặc tả SVG. Hai bộ này được gọi
chung là SVG Mobile, được tạo ra nhằm hướng đến các thiết bị cĩ tài nguyên hạn
chế chẳng hạn như các thiết bị cầm tay di động và các PDA (Personal Digital Assistant) (Thiết bị hỗ trợ kỹ thuật số cho cá nhân).
Đặc tả SVG Mobile được 3GPP chọn làm định dạng đồ họa bắt buộc cho các điện thoại di động thế hệ kế tiếp và cho việc gửi tin nhắn đa phương tiện. Hiện nay,
các thiết bị cầm tay cho phép dùng SVG đã được bán rộng rãi trên thị trường.
SVG Mobile được sử dụng chính cho việc gửi tin nhắn trong các ứng dụng như thiệp mừng, sơ đồ và các hoạt ảnh (ảnh chuyển động).
• Ấn bản
Sự kết hợp giữa các chức năng đồ họa, các hỗ trợ văn bản mang ngữ nghĩa và tính độc lập độ phân giải trong SVG đã tạo ra một định dạng thích hợp cho việc in
ấn. Các cơng ty sản xuất phần cứng in ấn hàng đầu hiện nay đang ra sức phát triển đặc tả SVG Print. Đây là một phiên bản mới của SVG được mơ tả thích hợp cho
cơng việc kết xuất tài liệu lên giấy tờ.
SVG Print được sử dụng trong các trường họp sau:
o Một ngơn ngữ mơ tả trang dựa trên XML tương tự như Postscript và PDF o Một định dạng lưu trữ ở mức hình thái cuối cùng
o Kỹ thuật in dữ liệu biến đổi, trong đĩ thơng tin vào được cung cấp thơng qua một cơ sở dữ liệu, và thơng tin ra được hiển thị bằng cách dùng một mẫu
32
SVG đồ họa. SVG cung cấp hiển thị dạng cứng (hardcopy) (chẳng hạn như giấy tờ) và hiển thị trực tuyến đồng nhất.
Vì SVG Print dựa trên nền tảng XML nên nĩ phù hợp một cách hồn hảo với các luồng cơng việc XML hiện cĩ. Điều này cĩ nghĩa là, nếu các chương trình cĩ
ống dẫn xử lý dữ liệu hỗ trợ XML thì sẽ cĩ thể chèn các khả năng của SVG Print
một cách dễ dàng vào luồng cơng việc ấn bản của chúng. Việc này cho phép phát sinh các tài liệu động. SVG Print cũng tích hợp các định dạng mơ tả cơng việc
chúng chẳng hạn như PODi’s PPML và CIP4’s JDF.
• Các ứng dụng Web
Các ứng dụng dựa trên nền đang tăng trưởng rất nhanh và phỗ biến. Các nhà
phát triển thường bị giới hạn bởi vấn đề khơng tương thích trình duyệt và thiếu các chức năng. Với sự hỗ trợ mạnh mẽ của ngơn ngữ viết kịch bản (script) và hỗ trợ bắt sự kiện, SVG cĩ thể được sử dụng dưới dạng một hệ nền mà các ứng dụng giàu
hình ảnh và các giao tiếp người dùng sẽ được xây dựng trên đĩ.
Với SVG, nhà phát triển ứng dụng sẽ quen với việc sử dụng một tập hợp các chuẩn mở. Chúng khơng bị ràng buộc vào một cài đặt chuyên biệt nào, một nhà sản xuất nào và một cơng cụ soạn thảo nào.
SVG thích hợp cho thị trường thơng dụng chuyên thiết kế đồ họa trong lĩnh
vực hàng khơng, vận tải, xe hơi và truyền thơng. Khả năng mở rộng của XML cho phép các sơ đồ SVG chứa được các siêu dữ liệu nhúng dưới nhiều định dạng khác nhau mà khơng ảnh hưởng đến việc minh họa.
Ví dụ, một chương trình CAD cĩ thể xuất kết quả ra định dạng SVG để hiển thị trực tuyếm, nhưng đồng thời cũng nhúng dữ liệu vào bên trong tập tin đĩ để cho phép người dùng chỉnh sửa nhanh chĩng nội dung của tập tin đĩ.
Cũng như các định dạng khác, hiện nay SVG là định dạng được rất nhiều cơng cụ hỗ trợ nhập và xuất dữ liệu. Do đĩ nĩ cĩ thể được sử dụng như là một định dạng trao đổi dữ liệu giữa các ứng dụng.
33
• GIS và bản đồ
GIS (Geographic Information Systems) cĩ các yêu cầu rất rõ ràng: các tính năng đồ họa phức tạp, hỗ trợ nội dung ảnh quét và véc-tơ và khả năng quản lý một
lượng dữ liệu lớn. SVG hồn tồn thích hợp cho thị trường này và nhiều hệ thống GIS đã hỗ trợ kết xuất ra SVG.
Giống như các mục tiêu thiết kế vừa được đề cập ở trên, khả năng mở rộng
SVG và dữ liệu nhúng đặc biệt hữu dụng đối với cộng đồng thực hiện bản đồ. Ví
dụ, các thành phần đồ họa cĩ thể được xem như các đối tượng cĩ sẵn (chẳng hạn như một hồ nước) trong SVG. Điều này cho phép các ứng dụng giao tiếp với các
đối tượng thơng qua ngơn ngữ hình học.
SVG là một phần bổ sung hồn hảo cho định dạng GML của tổ chức OpenGIS. GML, cũng dựa trên XML, mơ tả các thành phần đồ họa chẳng hạn như các con sơng và các con đường. Dữ liệu theo định dạng GML cĩ thể được chuyển
đổi sang dữ liệu theo định dạng SVG bằng cách sử dụng ống dẫn cho việc hiển thị
trực tuyến.
• Các hệ thống nhúng
Phần lớn các hệ thống nhúng đều cĩ các giới hạn khắt khe về tài nguyên, chẳng hạn như màn hình hiển thị nhỏ hơn, bộ nhớ cĩ dung lượng hạn chế, và khả năng tính tốn bị cắt giảm so với các hệ thống máy tính để bàn thường thấy. Đặc tả SVG Mobile được thiết kế cho các thiết bị như hệ thống nhúng, đồng thời cho phép phát triển các giao diện người dùng đồ họa cho các hệ thống này. Trong các hỗ trợ cho các sự kiện và viết kịch bản, các thiết bị cĩ thể sử dụng SVG dạng nhỏ để điều khiển và quản lý. Một trong các thiết bị như vậy là một hệ thống điều khiển máy
cơng nghiệp.
Cấu trúc tài liệu SVG cơ bản:
1 <?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> 2 <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" 3 "http://www.w3.org/TR/2001/REC-SVG-
34 20010904/DTD/svg10.dtd">
4 <svg xmlns="http://www.w3.org/2000/svg"
5 Xmlns:xlink="http://www.w3.org/1999/xlink"> 6 <-- Nội dung SVG nằm ở đây-->
7 </svg>
Dịng 1 : là một khai báo XML để chỉ định đây là một tài liệu XML thỏa quy
ước của bản đặc tả XML1.0.
Dịng 2,3: là một khai báo kiểu tài liệu XML để chỉ định văn phạm cho tập tin này. Văn phạm SVG được định nghĩa trong SVG 1.0 DTD.
Dịng 4: là thành phần gốc của tài liệu XML. Chúng ta tạo một thành phần ‘svg’ vì khai báo kiểu tài liệu chỉ định thành phần gốc bắt buộc phải là một thẻ
‘svg’. Thành phần này cũng chỉ định khơng gian tên XML mặc định cho tài liệu
này.
Thành phần ‘svg’ cĩ nhiều thuộc tính ảnh hưởng cho cả tài liệu SVG.
Dịng 5: dịng này chỉ định khơng gian tên liên kết ngồi được sử dụng để
tham chiếu ngoại các hình ảnh và các thành phần trong một tài liệu SVG. Dịng 6: Nội dung của tài liệu SVG
Dịng 7: Đĩng thành phần ‘svg’ để hồn chỉnh tài liệu SVG đúng hình thức.
35 Một ví dụ về SVG:
Ví dụ đơn giản sau vẽ chữ dọc theo một đường cong
Kết quả hiển thị trên trình duyệt: