1: การเตรียมเครื่องมือ
ดาวน์โหลด swftools.exe
http://www.swftools.org/download.html
ติดตั้งลงในไดรฟ์ D
SWFTools มีชุดเครื่องมือสำหรับการแปลงไฟล์ต่างๆ เป็น swf:
Font2swf.exe
gif2swf.exe
jpeg2swf.exe
pdf2swf.exe
png2swf.exe
wav2swf.exe
ที่นี่เราใช้เฉพาะ pdf2swf.exe เท่านั้น
ดาวน์โหลดเฟล็กเปเปอร์
http://code.google.com/p/flexpaper/
ที่นี่เราใช้ FlexPaper เวอร์ชันแฟลชที่คอมไพล์แล้ว
2: ภาษาตัวอย่าง นี่คือสภาพแวดล้อมการพัฒนาสองสภาพแวดล้อมที่ฉันใช้เป็นตัวอย่าง
ตัวอย่าง PHP สร้างไฟล์ swf จาก pdf
คัดลอกรหัสรหัสดังต่อไปนี้:
<?php
-
* สร้างเมื่อ 17-11-2010
-
* หากต้องการเปลี่ยนเทมเพลตสำหรับไฟล์ที่สร้างขึ้นนี้ ให้ไปที่
* หน้าต่าง - การตั้งค่า - PHPeclipse - PHP - เทมเพลตโค้ด
-
//รับไดเร็กทอรีที่มีไฟล์อยู่
$dir=dirname(__FILE__) ;
//ลบไฟล์ทดสอบ
@unlink( $dir"//test.swf" );
//ใช้คำสั่งแปลงไฟล์ pdf2swf
$command= "D:/SWFTools/pdf2swf.exe -t /"".$dir."//test.pdf/" -o /"".$dir."//test.swf/" -s flashversion= 9 ";
//สร้างวัตถุเชลล์
$WshShell = COM ใหม่("WScript.Shell");
//ดำเนินการคำสั่ง cmd
$oExec = $WshShell->Run("cmd /C ". $command, 0, จริง);
-
ตัวอย่างจาวา
คัดลอกรหัสรหัสดังต่อไปนี้:
-
-
* สร้างเมื่อ 17-11-2010
-
//รับไดเร็กทอรีที่มีไฟล์อยู่
เส้นทางสตริง=request.getRealPath("/");
//ใช้คำสั่งแปลงไฟล์ pdf2swf
คำสั่งสตริง= "D:/SWFTools/pdf2swf.exe -t /""+path+"//test.pdf/" -o /""+path+"//test.swf/" -s flashversion=9 ";
//ดำเนินการคำสั่ง cmd
Runtime.getRuntime().exec("cmd /c "+คำสั่ง);
-
ข้างต้นคือวิธีที่ php และ java แปลง pdf เป็น swf แล้วจอแสดงผลล่ะ ด้วยวิธีนี้ เราจะใช้ flexpaper ต่อไปนี้คือการใช้ flexpaper
คัดลอกรหัสรหัสดังต่อไปนี้:
<script type="text/javascript" src="js/swfobject/swfobject.js"></script>
<script type="text/javascript">
var swfVersionStr = "10.0.0";
var xiSwfUrlStr = "playerProductInstall.swf";
วาวา flashvars = {
SwfFile: Escape("test.swf"),
สเกล: 0.6,
ZoomTransition: "easeOut",
เวลาซูม: 0.5,
ระยะการซูม: 0.1,
FitPageOnLoad : เท็จ
FitWidthOnLoad: จริง
เปิดใช้งานการพิมพ์ : จริง,
FullScreenAsMaxWindow : เท็จ
ProgressiveLoading : จริง,
PrintToolsVisible : จริง,
ViewModeToolsVisible : จริง,
ZoomToolsVisible : จริง,
FullScreenVisible : จริง,
NavToolsVisible : จริง,
CursorToolsVisible : จริง,
SearchToolsVisible : จริง,
โลแคลเชน: "zh_CN"
-
พารามิเตอร์ต่างๆ = {
-
params.quality = "สูง";
params.bgcolor = "#ffffff";
params.allowscriptaccess = "sameDomain";
params.allowfullscreen = "จริง";
คุณลักษณะ var = {};
คุณลักษณะ id = "FlexPaperViewer";
คุณลักษณะชื่อ = "FlexPaperViewer";
swfobject.embedSWF(
"FlexPaperViewer.swf", "เนื้อหาแฟลช",
"650", "500",
swfVersionStr, xiSwfUrlStr,
flashvars, พารามิเตอร์, คุณลักษณะ);
swfobject.createCSS("#flashContent", "display:block;text-align:left;");
</สคริปต์>
<ร่างกาย>
<div style="position:absolute;left:10px;top:10px;">
<div id="flashContent">
</div>
</div>
</ร่างกาย>
ด้วยวิธีการข้างต้น เราสามารถแปลง pdf เป็นไฟล์ swf ที่เกี่ยวข้องและแสดงผ่าน flexpaper เพื่อป้องกันไม่ให้ผู้ใช้ดาวน์โหลดหรือคัดลอก
คำอธิบายพารามิเตอร์โดยละเอียดของ pdf2swf สามารถพบได้ใน Baidu หรือ Google แต่วิธีที่ดีที่สุดคือระบุ flashversion เป็น 9 เพื่อป้องกันข้อผิดพลาดที่ไม่คาดคิด
ไฟล์ PDF บางไฟล์ไม่สามารถแปลงเป็น pdf2swf ได้ และไฟล์ PDF ที่เข้ารหัสไม่สามารถแปลงเป็น pdf2swf ได้
สำหรับคำอธิบายโดยละเอียดของพารามิเตอร์ flexpaper โปรดดูที่ http://code.google.com/p/flexpaper/wiki/Parameters
Flexpaper API ที่ใช้กันทั่วไปhttp://code.google.com/p/flexpaper/wiki/API
หากมีปัญหาเกี่ยวกับอักขระที่อ่านไม่ออก อาจเกิดจากชุดอักขระ มีวิธีแก้ปัญหาที่เกี่ยวข้องมากมายบนอินเทอร์เน็ตที่คุณสามารถตรวจสอบได้ [ฉันไม่พบปัญหาการบล็อกชุดอักขระ]
นอกจากนี้ยังมีรูปภาพใน pdf ที่แปลงเป็น swf อาจไม่ชัดเจน
Word, wps, txt และเอกสารอื่น ๆ สามารถแปลงได้ด้วยวิธีนี้ แต่เครื่องมือนี้ไม่จำเป็นต้องใช้ swftools
ไฟล์แนบ Flexpaper ที่อัปโหลดมีไฟล์ที่เกี่ยวข้องใน flexpaper อยู่แล้ว ไม่จำเป็นต้องดาวน์โหลดอีกครั้ง เพียงดาวน์โหลด swftools แล้วติดตั้ง
ไฟล์แนบ Flexpaper ประกอบด้วยไฟล์ 2 ไฟล์ ได้แก่ pdf2swf.jsp และ pdf2swf.php และส่วนประกอบที่เกี่ยวข้องกับ Flexpaper ที่สามารถเรียกใช้ในสภาพแวดล้อม Java หรือ PHP