愛招飛幫助手冊 愛招飛幫助手冊
  • FastERP-1
  • Smart
  • PinToo
  • FastWeb
  • FastERP-2 企業管理系統 (opens new window)
  • 印染業ERP (opens new window)
  • 工廠終端機 (opens new window)
  • TARS
  • MARS
  • TaskRunner
  • Flying
  • FastDesk
  • HiDesk
  • HiNAT
  • FastBPM
  • 設備故障診斷 (opens new window)
  • 設備最佳運轉效益 (opens new window)
  • 企業智能助手SmeGPT (opens new window)
  • 燈號管理 (opens new window)
  • 戰情室 (opens new window)
  • 能源管理 (opens new window)
  • 人車定位 (opens new window)
  • 戰情指揮系統 (opens new window)
  • FastERP-1
  • FastWeb
  • Smart
  • PinToo
  • Flying
  • TARS
  • 通用功能

    • Report
    • Script
    • Echarts
    • Chart
    • DB Install
  • FastERP-1
  • Smart
  • PinToo
  • FastWeb
  • FastERP-2 企業管理系統 (opens new window)
  • 印染業ERP (opens new window)
  • 工廠終端機 (opens new window)
  • TARS
  • MARS
  • TaskRunner
  • Flying
  • FastDesk
  • HiDesk
  • HiNAT
  • FastBPM
  • 設備故障診斷 (opens new window)
  • 設備最佳運轉效益 (opens new window)
  • 企業智能助手SmeGPT (opens new window)
  • 燈號管理 (opens new window)
  • 戰情室 (opens new window)
  • 能源管理 (opens new window)
  • 人車定位 (opens new window)
  • 戰情指揮系統 (opens new window)
  • FastERP-1
  • FastWeb
  • Smart
  • PinToo
  • Flying
  • TARS
  • 通用功能

    • Report
    • Script
    • Echarts
    • Chart
    • DB Install
  • PinToo幫助主頁
  • 學習手冊

    • 基本入門

    • 功能介紹

    • 控制元件說明

      • 公共屬性
      • 標準控制元件
      • 系統控制元件
      • 附加控制元件
      • 佈局控制元件
      • 形狀控制元件
      • 數據控制控制元件
      • 手勢控制元件
      • 儀表盤控制元件
      • 快速設計控制元件
      • 多媒體控制元件
        • 1. TfxBaiduOCR(僅內部使用)
          • 1.1. 事件(Events)
          • 1.1.1. OnInitAccessTokenWithAkSkResult事件
          • 1.1.2. OnRecognizeResult事件
          • 1.2. 方法(Methods)
          • 1.2.1. ocrgeneralbasic方法
          • 1.2.2. ocr_general方法
          • 1.2.3. ocr_accurate方法
          • 1.2.4. ocrgeneralwebimage方法
          • 1.2.5. OCRidcardfrontnative方法
          • 1.2.6. OCRidcardbacknative方法
          • 1.2.7. ocrbankcard方法
          • 1.2.8. ocrvehiclelicense方法
          • 1.2.9. ocrdrivinglicense方法
          • 1.2.10. ocrbusinesslicense方法
          • 1.2.11. ocr_receipt方法
          • 1.2.12. ocrlicenseplate方法
          • 1.2.13. initAccessTokenWithAkSk方法
        • 2. TfxBaiduAPI
          • 2.1. 屬性(Properties)
        • 3. TfxBarcodeScanner
          • 3.1. 屬性(Properties)
          • 3.1.1. Flashlight屬性
          • 3.1.2. PlayVoice屬性
          • 3.1.3. Scan_ExtraTips屬性
          • 3.1.4. Scan_Tips屬性
          • 3.1.5. Scan_Title屬性
          • 3.1.6. ShowScanFromPhotoButton屬性
          • 3.1.7. ToastResult屬性
          • 3.1.8. Vibrate屬性
          • 3.2. 3.1.2.事件(Events)
          • 3.2.1. OnScanComletedCallbackEvent事件
          • 3.3. 方法(Methods)
          • 3.3.1. Start方法
        • 4. TfxObr
        • 5. TfxGPrinter
          • 5.1. 屬性(Properties)
          • 5.1.1. BluetoothMacAddress屬性
          • 5.2. 方法(Methods)
          • 5.2.1. TfxGPrinter元件主要方法
          • 5.2.1.1.1. OpenPort方法
          • 5.2.1.1.2. ClosePort方法
          • 5.2.1.1.3. sendLabelCommand方法
          • 5.2.1.1.4. sendEscCommand方法
          • 5.2.2. TCCGPrinterLabelCommand類主要方法
          • 5.2.2.1.1. addSize方法
          • 5.2.2.1.2. addGap方法
          • 5.2.2.1.3. addCashdrwer方法
          • 5.2.2.1.4. addOffset方法
          • 5.2.2.1.5. addSpeed方法
          • 5.2.2.1.6. addDensity方法
          • 5.2.2.1.7. addDirection方法
          • 5.2.2.1.8. addReference方法
          • 5.2.2.1.9. addCls方法
          • 5.2.2.1.10. addFeed方法
          • 5.2.2.1.11. addBackFeed方法
          • 5.2.2.1.12. addFormFeed方法
          • 5.2.2.1.13. addHome方法
          • 5.2.2.1.14. addPrint方法
          • 5.2.2.1.15. addCodePage方法
          • 5.2.2.1.16. addSound方法
          • 5.2.2.1.17. addLimitFeed方法
          • 5.2.2.1.18. addBar方法
          • 5.2.2.1.19. add1DBarcode方法
          • 5.2.2.1.20. addBox方法
          • 5.2.2.1.21. addBitmap方法
          • 5.2.2.1.22. addErase方法
          • 5.2.2.1.23. addReverse方法
          • 5.2.2.1.24. addText方法
          • 5.2.2.1.25. addQRCode方法
          • 5.2.2.1.26. addPeel方法
          • 5.2.2.1.27. addTear方法
          • 5.2.2.1.28. addCut方法
          • 5.2.2.1.29. addReprint方法
          • 5.2.2.1.30. addPrintKey方法
          • 5.2.2.1.31. addPrintKeyM方法
          • 5.3. 參數說明
          • 5.4. 示例
        • 6. TfxNFC
          • 6.1. 方法(Methods)
          • 6.2. 事件(Events)
          • 6.2.1. onTagText事件
          • 6.3. 示例
        • 7. TfxSdkCommLib
          • 7.1. 屬性(Properties)
          • 7.1.1. getDeviceId方法
          • 7.1.2. isGpsEnabled方法
          • 7.1.3. openGPSSettings方法
          • 7.1.4. setGPSEnabled方法
          • 7.1.5. hasSDCard方法
          • 7.1.6. sendMessageDirectly方法
          • 7.1.7. sendMessage方法
          • 7.1.8. callPhones方法
          • 7.1.9. dialPhones方法
          • 7.1.10. openWifiSettings方法
          • 7.1.11. isWifiEnabled方法
          • 7.1.12. setWifiEnabled方法
          • 7.1.13. isWifiConnected方法
          • 7.1.14. openBlueToothSettings方法
          • 7.1.15. isBluetoothSupported方法
          • 7.1.16. isBluetoothEnabled方法
          • 7.1.17. turnOnBluetooth方法
          • 7.1.18. turnOffBluetooth方法
          • 7.1.19. openApn方法
          • 7.1.20. vibrator方法
        • 8. TfxSignaturePad
          • 8.1. 屬性(Properties)
          • 8.1.1. SignatureBitmap屬性
          • 8.2. 方法(Methods)
          • 8.2.1. Clear方法
        • 9. TfxXFVoiceTTS
          • 9.1. 屬性(Properties)
          • 9.1.1. AppId屬性
          • 9.1.2. Lag屬性
          • 9.2. 事件(Events)
          • 9.2.1. OnRecognizerResult事件
          • 9.3. 方法(Methods)
          • 9.3.1. IAT_StartListening方法
          • 9.3.2. IAT_StopListening方法
          • 9.3.3. IAT_Cancel方法
          • 9.3.4. IAT_UploadContacts方法
          • 9.3.5. IAT_UploadUserwords方法
        • 10. TfxXFVoiceIAT
          • 10.1. 屬性(Properties)
          • 10.1.1. AppId屬性
          • 10.1.2. Voicer屬性
          • 10.2. 方法(Methods)
          • 10.2.1. TTS_Play方法
          • 10.3. 示例
        • 11. TfxScrollText元件
          • 11.1. 示列
        • 12. TfxWebView元件
          • 12.1. 示例
        • 13. fxTbsVideoPlayer
        • 14. TfxFlying
          • 14.1. 屬性
          • 14.1.1. HTTPOptions
          • 14.1.2. MailOptions
          • 14.1.3. MQTTOptions
          • 14.1.4. PrintOptions
          • 14.1.5. WebSocketOptions
          • 14.2. 事件
          • 14.2.1. OnReceivedError事件
          • 14.2.2. OnReceivedExport事件
          • 14.2.3. OnReceviedPrinter事件
          • 14.3. 方法(Methods)
          • 14.3.1. GetPrinterList方法
          • 14.3.2. ReportPrint方法
          • 14.3.3. ReportPreview方法
          • 14.3.4. PrintPdf方法
          • 14.3.5. PrintPic方法
        • 15. TfxDateTimePickerTheme
        • 16. TfxVideoClient
        • 17. TfxDeviceInfo
        • 18. TfxVideoServer
          • 18.1. 屬性
          • 18.2. 方法
          • 18.2.1. Start
          • 18.2.2. Stop
          • 18.2.3. TakePicture
        • 19. TfxVideoRecorder
          • 19.1. 屬性
      • 物聯網控制元件
      • 地圖控制元件
      • 數據表格控制元件
      • 特效控制元件
      • 動畫控制元件
      • SVG控制元件
      • IsoBean控制元件
    • 功能用法

    • 專用模板

    • 開發流程

    • 函式程式

  • 開發手冊

目录

多媒體控制元件

# PinToo控制元件使用(多媒體元件)

  多媒體控制元件中包含了用於媒體內容展示的相關控制元件型別

# 1. TfxBaiduOCR(僅內部使用)

  • 引用單元 CCBaiduOCR

  TfxBaiduOCR是一個基於BaiduOCR的OCR識別元件。使用時需要到百度官方網站進行註冊申請Key。

  OCR (Optical Character Recognition,光學字符識別)是指電子設備(例如掃描器或數碼相機)檢查紙上列印的字元,通過檢測暗、亮的模式確定其形狀,然後用字元識別方法將形狀翻譯成計算機文字的過程;即,針對印刷體字元,採用光學的方式將紙質文件中的文字轉換成為黑白點陣的影象檔案,並通過識別軟體將影象中的文字轉換成文字格式,供文書處理軟體進一步編輯加工的技術。如何除錯或利用輔助資訊提高識別正確率,是OCR最重要的課題,ICR(Intelligent Character Recognition)的名詞也因此而產生。衡量一個OCR系統性能好壞的主要指標有:拒識率、誤識率、識別速度、用戶界面的友好性,產品的穩定性,易用性及可行性等。

# 1.1. 事件(Events)

  • TfxBaiduOCR元件主要事件
事件 何時觸發
OnInitAccessTokenWithAkSkResult 初始化元件時觸發
OnRecognizeResult 識別完成時觸發

# 1.1.1. OnInitAccessTokenWithAkSkResult事件

procedure (Sender: TObject;AErrorCode: Integer; AErrorMsg: String; AToken: String);
1

  當TfxBaiOCR元件呼叫InitAccessTokenWithAkSk方法時,觸發該事件。

if AErrorCode = 0 then
begin
    showmessage('獲取token成功!' + #13#10 + AToken);
end
else
begin
    showmessage('獲取token失敗!' + #13#10 + AErrorMsg);
end;
1
2
3
4
5
6
7
8

# 1.1.2. OnRecognizeResult事件

 procedure(Sender: TObject;AOCRType: String; AErrorCode: Integer; AErrorMsg: String;AFilePath: String; AJosonResult: String; AIDCardInfo:TCCIDCardInfo;ABankCardInfo: TCCBankCardInfo)
1

  當TfxBaiOCR元件識別成功時,觸發該事件並返回識別結果。

Showmessage(AJosonResult);
1

# 1.2. 方法(Methods)

  • TfxBaiduOCR元件主要方法
方法 功能說明
ocr_general_basic 識別SIM卡號、通用文字識別
ocr_general 通用文字識別含位置資訊
ocr_accurate 通用文字識別含位置資訊高精版
ocr_general_webimage 網路圖片識別
OCR_id_card_front_native 身份證正面識別
OCR_id_card_back_native 身份證反面識別
ocr_bank_card 銀行卡識別
ocr_vehicle_license 行駛證識別
ocr_driving_license 駕駛證識別
ocr_business_license 營業執照識別
ocr_receipt 通用票據識別
ocr_license_plate 車牌識別
initAccessTokenWithAkSk 初始化OCR元件

# 1.2.1. ocr_general_basic方法

  識別SIM卡號、通用文字識別。

//SIM卡識別
fxBaiduOCR1.TagString:='SIM';
fxBaiduOCR1.ocr_general_basic;

//通用文字識別
fxBaiduOCR1.TagString:='ocr_general_basic';
fxBaiduOCR1.ocr_general_basic;
1
2
3
4
5
6
7

# 1.2.2. ocr_general方法

  通用文字識別含位置資訊。

//通用文字識別含位置資訊
fxBaiduOCR1.ocr_general;
1
2

# 1.2.3. ocr_accurate方法

  通用文字識別含位置資訊。

//通用文字識別含位置資訊高精版
fxBaiduOCR1.TagString:='ocr_accurate';
fxBaiduOCR1.ocr_accurate;  
1
2
3

# 1.2.4. ocr_general_webimage方法

  網路圖片識別。

//網路圖片識別
fxBaiduOCR1.TagString:='ocr_general_webimage';
fxBaiduOCR1.ocr_general_webimage;
1
2
3

# 1.2.5. OCR_id_card_front_native方法

  身份證正面識別。

  //身份證正面識別
  fxBaiduOCR1.TagString:='OCR_id_card_front_native';
  fxBaiduOCR1.OCR_id_card_front_native;
1
2
3

# 1.2.6. OCR_id_card_back_native方法

  身份證反面識別。

  //身份證反面識別  
  fxBaiduOCR1.TagString:='OCR_id_card_back_native';
  fxBaiduOCR1.OCR_id_card_back_native;
1
2
3

# 1.2.7. ocr_bank_card方法

  銀行卡識別。

  fxBaiduOCR1.TagString:='ocr_bank_card';
  fxBaiduOCR1.ocr_bank_card;
1
2

# 1.2.8. ocr_vehicle_license方法

  行駛證識別。

  //行駛證識別
  fxBaiduOCR1.TagString:='OCR_id_card_front_native';
  fxBaiduOCR1.ocr_vehicle_license;
1
2
3

# 1.2.9. ocr_driving_license方法

  駕駛證識別。

  //駕駛證識別
  fxBaiduOCR1.TagString:='ocr_driving_license';
  fxBaiduOCR1.ocr_driving_license;
1
2
3

# 1.2.10. ocr_business_license方法

  營業執照識別。

  //營業執照識別
  fxBaiduOCR1.ocr_business_license;
1
2

# 1.2.11. ocr_receipt方法

  通用票據識別。

  //通用票據識別
  fxBaiduOCR1.TagString:='ocr_receipt';
  fxBaiduOCR1.ocr_receipt;
1
2
3

# 1.2.12. ocr_license_plate方法

  車牌識別。

  //車牌識別
  fxBaiduOCR1.TagString:='ocr_license_plate';
  fxBaiduOCR1.ocr_license_plate;
1
2
3

# 1.2.13. initAccessTokenWithAkSk方法

procedure TCCBaiduOCR.initAccessTokenWithAkSk(ak: String; sk: String);
1

  BaiOCR初始化,驗證AK,SK是否正確,並返回AccessToken令牌。

fxBaiduOCR1.initAccessTokenWithAkSk(ak字串,sk字串);
1

# 2. TfxBaiduAPI

  • 引用單元 uBaiduAPI

  TfxBaiduAPI是一個基於BaiduOCR的OCR識別元件。使用時需要到百度官方網站進行註冊申請Key。

# 2.1. 屬性(Properties)

  • TfxBaiduAPI元件SdkConfig主要屬性
屬性 功能說明
APIKey 百度OCR APIKey
Secret 百度OCR金鑰
  • 示例

基礎文字識別

  //基礎文字識別
 var
  v:string;
 begin
  //可指定檔案或指定圖片的Bitmap
  fxBaiduAPI1.FileToBase64 := PicturePath; //PicturePath是指圖片路徑
  fxBaiduAPI1.SetPictureToBase64(Image1.Bitmap)//指定圖片的Bitmap
  fxBaiduAPI1.GeneralBasic := fxBaiduAPI1.FileToBase64;
  v := fxBaiduAPI1.GeneralBasic; 
 end;
1
2
3
4
5
6
7
8
9
10

車牌識別

  //車牌識別
 var
  v:string;
 begin
  //可指定檔案或指定圖片的Bitmap
  fxBaiduAPI1.FileToBase64 := PicturePath; //PicturePath是指圖片路徑
  fxBaiduAPI1.SetPictureToBase64(Image1.Bitmap)//指定圖片的Bitmap
  fxBaiduAPI1.licensePlate := fxBaiduAPI1.FileToBase64;
  v := fxBaiduAPI1.licensePlate; 
 end;
1
2
3
4
5
6
7
8
9
10
//車牌識別時觸發DolicensePlate事件,可在事件中定義其它配合的業務邏輯
Procedure fxBaiduAPI1DolicensePlate(Sender: TObject; Color: string; Number: string);
Begin
  Showmessage('顏色:'+Color+',車牌號:'+Number);
End;
1
2
3
4
5

車型識別

  //車型識別
 var
  v:string;
 begin
  //可指定檔案或指定圖片的Bitmap
  fxBaiduAPI1.FileToBase64 := PicturePath; //PicturePath是指圖片路徑
  fxBaiduAPI1.SetPictureToBase64(Image1.Bitmap)//指定圖片的Bitmap
  fxBaiduAPI1.Car := fxBaiduAPI1.FileToBase64;
  v := fxBaiduAPI1.Car; 
 end;
1
2
3
4
5
6
7
8
9
10

# 3. TfxBarcodeScanner

  • 引用單元 CCBarcodeScanner

  一維二維條碼識別元件。

# 3.1. 屬性(Properties)

  • TfxBarcodeScanner元件SdkConfig主要屬性
屬性 功能說明
Flashlight 指定是否開啟閃光燈功能
PlayVoice 指定是否開啟掃瞄提示音
Scan_ExtraTips 指定掃瞄框下方提示資訊
Scan_Tips 指定掃瞄框提示資訊
Scan_Title 指定掃瞄窗體的標題欄
ShowScanFromPhotoButton 指定是否顯示相簿按鈕
ToastResult 指定是否顯示掃瞄返回結果
Vibrate 指定是否開啟震動功能

# 3.1.1. Flashlight屬性

  開啟閃光燈,可以在光線不足的情況下增加掃瞄成功率。

  //開啟閃光燈
  fxBarcodeScanner1.SdkConfig.Flashlight := true;
1
2

# 3.1.2. PlayVoice屬性

  開啟掃瞄提示音,掃瞄條碼成功後會有「嘀」的聲音發出。

//開啟提示音
  fxBarcodeScanner1.SdkConfig.PlayVoice := true;
1
2

# 3.1.3. Scan_ExtraTips屬性

  指定一個掃瞄框下方面提示內容。

# 3.1.4. Scan_Tips屬性

  指定一個掃瞄框上方面提示內容。

  fxBarcodeScanner1.SdkConfig.Scan_Tips := '將二維碼/條碼放入框內,即可自動掃瞄';
1

# 3.1.5. Scan_Title屬性

  指定一個掃瞄框窗體的標題內容。

  fxBarcodeScanner1.SdkConfig.Scan_Title := '二維碼/條碼';
1

# 3.1.6. ShowScanFromPhotoButton屬性

  指定是否開啟相簿按鈕,當設定為True時,顯示相簿按鈕,可選擇相簿中包含條碼資訊的相片進行條碼識別。

  //開啟相簿按鈕
  fxBarcodeScanner1.SdkConfig.ShowScanFromPhotoButton := true;
1
2

# 3.1.7. ToastResult屬性

  指定是否開啟返回掃瞄結果。開啟時,掃瞄識別的條碼資訊會通過Toast提示框方式顯示在螢幕上。

  //顯示掃瞄結果
  fxBarcodeScanner1.SdkConfig.ToastResult := true;
1
2

# 3.1.8. Vibrate屬性

  指定是否開啟震動功能。開啟時,掃瞄成時會以震動反饋出來。

  //開啟震動功能
  fxBarcodeScanner1.SdkConfig.Vibrate := true;
1
2

# 3.2. 3.1.2.事件(Events)

  • TfxBarcodeScanner元件主要事件
事件 何時觸發
OnScanComletedCallbackEvent 當條碼掃瞄成功后回撥觸發

# 3.2.1. OnScanComletedCallbackEvent事件

  當條碼掃瞄成功后回撥觸發,在此可以實現特定的業務處理。

Procedure fxBarcodeScanner1OnScanComletedCallbackEvent(Sender: TObject; ResultCode: Integer; ResultString: string);
Begin
   fxMemo1.Lines.Add(ResultString);//將掃瞄結果寫入文字框中
End;
1
2
3
4

# 3.3. 方法(Methods)

  • TfxBarcodeScanner元件主要方法
方法 功能說明
Start 開始掃瞄

# 3.3.1. Start方法

fxBarcodeScanner1.Start;
1

# 4. TfxObr

  • 引用單元 SystemClass

  TfxObr是一個識別圖片中二維碼的元件。

  通過fxObr1.Obr方法識別圖片中的二維碼,並通過OnObr事件反饋識別后的結果。

    //識別Image1圖片中的二維碼
    fxObr1.Obr(Image1.Bitmap);
1
2

# 5. TfxGPrinter

  • 引用單元 CCGPrinter

  TfxGPrinter是一個佳博條碼印表機元件,通過藍芽方式進行連線列印。

  TfxGPrinter包含兩個打機印型別 TCCGPrinterEscCommand(小票POS印表機)和TCCGPrinterLabelCommand(標籤印表機)。

# 5.1. 屬性(Properties)

  • TfxGPrinter元件主要屬性
屬性 功能說明
BluetoothMacAddress 指定藍芽MAC地址

# 5.1.1. BluetoothMacAddress屬性

property BluetoothMacAddress: String read FBluetoothMacAddress write SetBluetoothMacAddress;
1

  BluetoothMacAddress屬性是指被連線的藍芽印表機的Mac地址,通過指定Mac地址,實現連線和列印功能。

AGPrinter.BluetoothMacAddress:='DC:0D:30:75:4B:6C'; //將藍芽地址賦值給控制元件
1

# 5.2. 方法(Methods)

# 5.2.1. TfxGPrinter元件主要方法

  • TfxGPrinter元件主要方法
方法 功能說明
OpenPort 打開藍芽連線
ClosePort 關閉藍芽連線
sendLabelCommand 發送標籤列印命令
sendEscCommand 發送POS列印命令
# 5.2.1.1.1. OpenPort方法
function OpenPort: Boolean;
1

  使用OpenPort方法時,必需先配對並指定藍芽Mac地址。

  AGPrinter.BluetoothMacAddress:='DC:0D:30:75:4B:6C'; //將藍芽地址賦值給控制元件
  if AGPrinter.OpenPort then
        showmessage('連線成功!')
  else
        showmessage('連線失敗!');
1
2
3
4
5
# 5.2.1.1.2. ClosePort方法
function ClosePort: Boolean;
1

  使用ClosePort方法時,將會關閉與印表機的連線。

# 5.2.1.1.3. sendLabelCommand方法
procedure sendLabelCommand(ALabelCommand: TCCGPrinterLabelCommand);
1

  發送標籤列印命令。

# 5.2.1.1.4. sendEscCommand方法
procedure sendEscCommand(AEscCommand: TCCGPrinterEscCommand);
1

  發送小票列印命令。

# 5.2.2. TCCGPrinterLabelCommand類主要方法

  • TCCGPrinterLabelCommand類主要方法
方法 功能說明
addSize 設定標籤尺寸
addGap 設定間隙長度
addCashdrwer 產生錢箱控制脈衝
addOffset 控制每張標籤的停止位置
addSpeed 設定列印速度
addDensity 設定列印濃度
addDirection 設定列印方向和映象
addReference 設定原點座標,原點座標位置與 DIRECION 設定有關
addCls 清除列印緩衝區數據
addFeed 走紙
addBackFeed 退紙
addFormFeed 走一張標籤距離
addHome 標籤紙位置進行一次校準
addPrint 列印標籤
addCodePage 設定國際內碼表
addSound 設定蜂鳴器
addLimitFeed 用於設定印表機走紙時,若走過設定長度仍無法檢測到間隙,則印表機報錯
addBar 在列印緩衝區域上繪製黑塊
add1DBarcode 在列印緩衝區域上繪製一維條碼
addBox 在列印緩衝區域繪製矩形
addBitmap 在列印緩衝區域繪製點陣圖
addErase 擦除列印緩衝區中指定區域的數據
addReverse 將指定區域的數據黑白反色
addText 在列印緩衝區中繪製文字
addQRCode 在列印緩衝區中繪製二維碼
addPeel 設定剝離功能是否開啟,僅限於部分機型,預設關閉
addTear 設定撕離功能是否開啟,預設開啟
addCut 設定切刀功能是否開啟,僅限於部分機型
addReprint 設定印表機出現錯誤時,是否列印上一張內容,預設開啟
addPrintKey 設定是否按走紙鍵列印最近一張標籤
addPrintKeyM 設定按走紙鍵列印最近一張標籤的份數
# 5.2.2.1.1. addSize方法
//功能:設定標籤尺寸
//參數:width:標籤寬度 mm
//height:標籤高度 mm
//返回值:無
procedure addSize(width: Integer; height: Integer);
1
2
3
4
5
# 5.2.2.1.2. addGap方法
//功能:設定間隙長度
//參數:gap:間隙長度單位 mm
//返回值:無
procedure addGap(gap: Integer);
1
2
3
4
# 5.2.2.1.3. addCashdrwer方法
//功能:產生錢箱控制脈衝
//參數:m :錢箱引腳號
//t1 :高電平時間為 t1 x 2ms
//t2 : 低電平時間為 t2 x 2ms
//返回值:無
procedure addCashdrwer(m: TCCGPrinter_LabelCommand_FOOT; t1: Integer; t2: Integer);
1
2
3
4
5
6
# 5.2.2.1.4. addOffset方法
//功能:控制每張標籤的停止位置
//參數:offset: 停止偏移量 mm
//返回值:無
procedure addOffset(offset: Integer); cdecl; // (I)V
1
2
3
4
# 5.2.2.1.5. addSpeed方法
//功能:設定列印速度
//參數:speed: 列印速度
//返回值:無
//procedure addSpeed(speed: TCCGPrinter_LabelCommand_SPEED);
1
2
3
4
# 5.2.2.1.6. addDensity方法
//功能:設定列印濃度
//參數:density: 列印濃度
//返回值:無
procedure addDensity(density: TCCGPrinter_LabelCommand_DNESITY);
1
2
3
4
# 5.2.2.1.7. addDirection方法
//功能:設定列印方向和映象
//參數:direction: 列印方向
//mirror: 是否映象
procedure addDirection(direction: TCCGPrinter_LabelCommand_DIRECTION;mirror: TCCGPrinter_LabelCommand_MIRROR);
1
2
3
4
# 5.2.2.1.8. addReference方法
//功能:設定原點座標,原點座標位置與 DIRECION 設定有關
//參數:x :原點橫座標
//y:原點縱座標
procedure addReference(x: Integer; y: Integer);
1
2
3
4
# 5.2.2.1.9. addCls方法
//功能:清除列印緩衝區數據
//參數:無
procedure addCls;
1
2
3
# 5.2.2.1.10. addFeed方法
//功能:走紙
//參數:dot:走紙距離 單位 點
//返回值:無
procedure addFeed(dot: Integer);
1
2
3
4
# 5.2.2.1.11. addBackFeed方法
//功能:退紙
//參數:dot:退紙距離 單位 點
//返回值:無
procedure addBackFeed(dot: Integer);
1
2
3
4
# 5.2.2.1.12. addFormFeed方法
//功能:走一張標籤距離
//參數:無
//返回值:無
procedure addFormFeed;
1
2
3
4
# 5.2.2.1.13. addHome方法
//功能:標籤位置進行一次校準
//參數:無
//返回值:無
procedure addHome;
1
2
3
4
# 5.2.2.1.14. addPrint方法
//功能:列印標籤
//參數:m 為列印的份數
//返回值:無
procedure addPrint(m: Integer); overload;
procedure addPrint(m, n: Integer); overload;
1
2
3
4
5
# 5.2.2.1.15. addCodePage方法
//功能:設定國際內碼表
//參數:page :國際內碼表
//返回值:無
procedure addCodePage(page: TCCGPrinter_LabelCommand_CODEPAGE);
1
2
3
4
# 5.2.2.1.16. addSound方法
//功能:設定蜂鳴器
//參數:level: 聲音階級
//Interval: 聲音長短
//返回值:無
procedure addSound(level: Integer; interval: Integer);
1
2
3
4
5
# 5.2.2.1.17. addLimitFeed方法
//功能:用於設定印表機走紙時,若走過設定長度仍無法檢測到間隙,則印表機報錯
//參數:n : 走紙長度 單位 mm
//返回值:無
procedure addLimitFeed(n: Integer);
1
2
3
4
# 5.2.2.1.18. addBar方法
//功能:在列印緩衝區域上繪製黑塊
//參數:x:起始橫座標
//y:起始縱座標
//width:線寬
//height:線高
//返回值:無
procedure addBar(x: Integer; y: Integer; width: Integer; height: Integer);
1
2
3
4
5
6
7
# 5.2.2.1.19. add1DBarcode方法
//功能:在列印緩衝區域繪製一維條碼
//參數:x:起始橫座標
//y:起始縱座標
//type:條碼型別
//height:條碼高度
//readable:是否列印可識別字符
//rotation:條碼旋轉角度 0°、 90°、 180°、 270°
//content:條碼數據,數據需參考條碼規則輸入
//注意:列印 CODE128 碼時預設為 CODEB,如需列印 CODEA 或 CODEC 請按以下規則輸入
//返回值:無
procedure add1DBarcode(x: Integer; y: Integer;atype: TCCGPrinter_LabelCommand_BARCODETYPE; height: Integer;readable: TCCGPrinter_LabelCommand_READABEL;rotation: TCCGPrinter_LabelCommand_ROTATION; content: String);
1
2
3
4
5
6
7
8
9
10
11
# 5.2.2.1.20. addBox方法
//功能:在列印緩衝區域繪製矩形
//參數:x:起始橫座標
//y:起始縱座標
//xend:終點橫座標
//yend:終點縱座標
//返回值:無
procedure addBox(x: Integer; y: Integer; xend: Integer; yend: Integer);
1
2
3
4
5
6
7
# 5.2.2.1.21. addBitmap方法
//功能:在列印緩衝區域繪製點陣圖
//參數:x:起始橫座標
//y:起始縱座標
//mode:點陣圖模式
//nWidth:點陣圖列印的寬度
//b:點陣圖數據
procedure addBitmap(x: Integer; y: Integer;mode: TCCGPrinter_LabelCommand_BITMAP_MODE; nWidth: Integer; b: TBitmap);
1
2
3
4
5
6
7
# 5.2.2.1.22. addErase方法
{
功能:擦除列印緩衝區中指定區域的數據
參數:x:起始橫座標
y:起始縱座標
xwidth:橫向寬度
yheight:縱向高度
}
procedure addErase(x: Integer; y: Integer; xwidth: Integer; yheight: Integer);
1
2
3
4
5
6
7
8
# 5.2.2.1.23. addReverse方法
{
功能:將指定區域的數據黑白反色
參數:x:起始橫座標
y:起始縱座標
xwidth:橫向寬度
yheight:縱向高度
}
procedure addReverse(x: Integer; y: Integer; xwidth: Integer;yheight: Integer);
1
2
3
4
5
6
7
8
# 5.2.2.1.24. addText方法
{
功能:在列印緩衝區中繪製文字
參數:x:起始橫座標
y:起始縱座標
font:字型型別
enum FONTTYPE {
      FONT_1
      ("1"), 8x12 dot 英文和數字
      FONT_2
      ("2"), 12x20 dot 英文和數字
      FONT_3
      ("3"), 16x24 dot 英文和數字
      FONT_4
      ("4"), 24x32 dot 英文和數字
      FONT_5
      ("5"), 32x48 dot 英文和數字
      FONT_6
      ("6"), 14x19 dot 英文和數字
      FONT_7
      ("7"), 21x27 dot 英文和數字
      FONT_8
      ("8"), 14x25 dot 英文和數字
      SIMPLIFIED_CHINESE("TSS24.BF2"), 簡體中文
      TRADITIONAL_ CHINESE ("TST24.BF2"), 繁體中文
      KOREAN("K"); 韓文

      rotation:旋轉角度 0°、 90°、 180°、 270°
      xscal:橫向放大係數 1-10 倍
      yscal:縱向放大係數 1-10 倍
      text:文字字串
}
procedure addText(x: Integer; y: Integer;font: TCCGPrinter_LabelCommand_FONTTYPE;rotation: TCCGPrinter_LabelCommand_ROTATION;Xscal: TCCGPrinter_LabelCommand_FONTMUL;Yscal: TCCGPrinter_LabelCommand_FONTMUL; text: String);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# 5.2.2.1.25. addQRCode方法
{
  功能:在列印緩衝區中繪製二維碼
  參數:x:起始橫座標
  y:起始縱座標
  level:糾錯級別
  cellwidth:單元大小
  rotation:旋轉角度 0°、 90°、 180°、 270°
  data:文字字串
  返回值:無
}
procedure addQRCode(x: Integer; y: Integer;level: TCCGPrinter_LabelCommand_EEC; cellwidth: Integer;rotation: TCCGPrinter_LabelCommand_ROTATION; data: String);
1
2
3
4
5
6
7
8
9
10
11
# 5.2.2.1.26. addPeel方法
{
  功能:設定剝離功能是否開啟,僅限於部分機型,預設關閉
  參數:enable 是否可用
  返回值:無
}
procedure addPeel(enable: TCCGPrinter_EscCommand_ENABLE);
1
2
3
4
5
6
# 5.2.2.1.27. addTear方法
{
  功能:設定撕離功能是否開啟,預設開啟
  參數:enable 是否可用
  返回值:無
}
procedure addTear(enable: TCCGPrinter_EscCommand_ENABLE);
1
2
3
4
5
6
# 5.2.2.1.28. addCut方法
{
  功能:設定切刀功能是否開啟,僅限於部分機型
  參數:enable 是否使能
  返回值:無
}
procedure addCut(enable: TCCGPrinter_EscCommand_ENABLE);
1
2
3
4
5
6
# 5.2.2.1.29. addReprint方法
{
  功能:設定印表機出現錯誤時,是否列印上一張內容,預設開啟
  參數:enable 是否使能
  返回值:無
 }
procedure addReprint(enable: TCCGPrinter_EscCommand_ENABLE);
1
2
3
4
5
6
# 5.2.2.1.30. addPrintKey方法
{
  功能:設定是否按走紙鍵列印最近一張標籤
  參數:enable 是否使能
  返回值:無
}
procedure addPrintKey(enable: TCCGPrinter_EscCommand_ENABLE);
1
2
3
4
5
6
# 5.2.2.1.31. addPrintKeyM方法
{
  功能:設定按走紙鍵列印最近一張標籤的份數
  參數:m:列印份數
  返回值:無
}
procedure addPrintKeyM(m: Integer);
1
2
3
4
5
6

# 5.3. 參數說明

  以下是TfxGPPrinter元件使用到的列舉型別

  //錢箱引腳號
  TCCGPrinter_LabelCommand_FOOT = (FOOT_F2, FOOT_F5);
  //列印速度
  TCCGPrinter_LabelCommand_SPEED = (SPEED1DIV5, SPEED2, SPEED3, SPEED4);
  //列印濃度
  TCCGPrinter_LabelCommand_DNESITY = (DNESITY0, DNESITY1, DNESITY2, DNESITY3,DNESITY4, 
    DNESITY5, DNESITY6, DNESITY7, DNESITY8, DNESITY9, DNESITY10,DNESITY11, DNESITY12, DNESITY13, DNESITY14, DNESITY15);
  //列印方向
  TCCGPrinter_LabelCommand_DIRECTION = (DIRECTION_FORWARD(向前), DIRECTION_BACKWARD(向後));
  //列印映象
  TCCGPrinter_LabelCommand_MIRROR = (MIRROR_NORMAL(正常), MIRROR_MIRROR(映象));
  //國際內碼表
  TCCGPrinter_LabelCommand_CODEPAGE = (PC437, PC850, PC852, PC860, PC863, PC865,WPC1250, WPC1252, WPC1253, WPC1254);
  //一維條碼型別
  TCCGPrinter_LabelCommand_BARCODETYPE = (CODE128, CODE128M, EAN128, ITF25,
    ITF25C, CODE39, CODE39C, CODE39S, CODE93, EAN13, EAN13_2, EAN13_5, EAN8,
    EAN8_2, EAN8_5, CODABAR, POST, UPCA, UPCA_2, UPCA_5, UPCE, UPCE_2, UPCE_5,
    CPOST, MSI, MSIC, PLESSEY, ITF14, EAN14);
  //是否列印可識別字符
  TCCGPrinter_LabelCommand_READABEL = (DISABLE, EANBEL);
  //旋轉角度
  TCCGPrinter_LabelCommand_ROTATION = (ROTATION_0, ROTATION_90, ROTATION_180,
    ROTATION_270);
  //點陣圖模式
  TCCGPrinter_LabelCommand_BITMAP_MODE = (BITMAP_MODE_OVERWRITE(覆蓋), BITMAP_MODE_OR, BITMAP_MODE_XOR);
  //字型型別
  TCCGPrinter_LabelCommand_FONTTYPE = (FONT_1, FONT_2, FONT_3, FONT_4, FONT_5,FONT_6, FONT_7, FONT_8, FONT_9, 
     FONT_10, SIMPLIFIED_CHINESE,TRADITIONAL_CHINESE, KOREAN);
  //放大係數
  TCCGPrinter_LabelCommand_FONTMUL = (MUL_1, MUL_2, MUL_3, MUL_4, MUL_5, MUL_6,
    MUL_7, MUL_8, MUL_9, MUL_10);
  //糾錯級別
  TCCGPrinter_LabelCommand_EEC = (LEVEL_L, LEVEL_M, LEVEL_Q, LEVEL_H);
  //是否可用
  TCCGPrinter_EscCommand_ENABLE = (ENABLE_ON, ENABLE_OFF);

  TCCGPrinter_EscCommand_JUSTIFICATION = (LEFT, CENTER, RIGHT);

  TCCGPrinter_EscCommand_FONT = (FONTA, FONTB);

  TCCGPrinter_EscCommand_ErrorCorrectionLevelForQRCode=(QRCodeLEVEL_L=$30,QRCodeLEVEL_M=$31,QRCodeLEVEL_Q=$32,QRCodeLEVEL_H=$33);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41

# 5.4. 示例

  通過TfxGPPrinter元件,連線佳博藍芽標籤印表機,實現列印功能。

  依照下圖,建立一個窗體。

  • 具體實現如下:
//連線藍芽標籤印表機
Procedure fxButton1OnClick(Sender: TObject);
Begin
  AGPrinter.BluetoothMacAddress:='DC:0D:30:75:4B:6C'; //將藍芽地址賦值給控制元件
  if AGPrinter.OpenPort then
        showmessage('連線成功!')
  else
        showmessage('連線失敗!');
End;

//列印標籤
Procedure fxButton2OnClick(Sender: TObject);
var
  ALabelCommand: TCCGPrinterLabelCommand;
  fxXFVoiceIAT1:TfxButton;
Begin
  ALabelCommand := TCCGPrinterLabelCommand.Create; //建立標籤列印對像
  ALabelCommand.addCls; // 清除列印緩衝區數據
  ALabelCommand.addSize(80, 60); // 設定標籤大小 mm
  ALabelCommand.addGap(2); // 設定標籤間隙,按照實際尺寸設定,如果為無間隙紙則設定為0
  ALabelCommand.addDirection(DIRECTION_FORWARD,MIRROR_NORMAL);
  ALabelCommand.addReference(0, 0); // 設定原點座標
  try
    ALabelCommand.addText(8 * 2, 4 * 5,
      SIMPLIFIED_CHINESE,
      ROTATION_0, //旋轉
      MUL_2,      //
      MUL_2, '姓名:愛招飛');
    ALabelCommand.addText(8 * 2, 4 * 15,
      SIMPLIFIED_CHINESE,
      ROTATION_0,
      MUL_1,
      MUL_1, '性別:男');
    ALabelCommand.addText(8 * 2, 4 * 25,
      SIMPLIFIED_CHINESE,
      ROTATION_0,
      MUL_1,
      MUL_1, '年齡:99歲');
    ALabelCommand.add1DBarcode(8 * 2, 4 * 35,
      CODE128, 8 * 12,
      EANBEL,
      ROTATION_0, '18658867688');
    ALabelCommand.addQRCode(8 * 20, 4 * 45,
      LEVEL_L, 5,
      ROTATION_0, 'PinToo(拼圖) 二維碼');
  Finally
    ALabelCommand.addPrint(1,1); // 設定列印份數
    ALabelCommand.addSound(2, 100); // 設定蜂鳴器
    // 發送列印標籤命令
    AGPrinter.sendLabelCommand(ALabelCommand);
    ALabelCommand.Free;
  End;
End;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
  • 標籤

# 6. TfxNFC

  • 引用單元 CCNFC

  TfxNFC是一個NFC元件,可以通過該元件讀取NFC資訊。

# 6.1. 方法(Methods)

  • TfxNFC元件主要方法
方法 功能說明
IsNFCUse 判斷設備是否支援NFC功能
IsNFCEnabled 判斷設備是否啟用NFC功能
readNfcTagText 讀取NFC資訊

# 6.2. 事件(Events)

  • TfxNFC元件主要事件
事件 何時觸發
onTagText 當檢測到NFC時觸發並反饋回NFC資訊

# 6.2.1. onTagText事件

    property onTagText: TOnTagText read FOnTagText write SetOnTagText;
1

  當檢測到NFC時觸發並反饋回NFC資訊。

# 6.3. 示例

//手動讀取NFC資訊
Procedure fxButton1OnClick(Sender: TObject);
Begin
 fxMemo1.Lines.Add('NFC Value: '+fxNFC1.readNfcTagText);
End;

//自動感應NFC並讀取資訊
Procedure fxNFC1onTagText(ASender: TObject; ATagText: string);
Begin
  fxMemo1.Lines.Add('NFC Value: '+ATagText);
End;

//判斷設備是否支援NFC功能
Procedure fxButton2OnClick(Sender: TObject);
Begin
  if fxNFC1.IsNFCUse Then
     Showmessage('設備支援NFC功能!')
  else
     Showmessage('設備不支援NFC功能!')
End;

//判斷設備NFC功能是否開啟
Procedure fxButton3OnClick(Sender: TObject);
Begin
  if fxNFC1.IsNFCEnabled Then
     Showmessage('設備已開啟NFC!')
  else
     Showmessage('設備已未開啟NFC!')
End;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

# 7. TfxSdkCommLib

  • 引用單元 CCSdkCommLib

  呼叫安卓原生庫。

  您可以通過TfxSdkCommLib元件來呼叫安卓原生庫的功能,如撥打電話、發送簡訊、開關WIFI等。

# 7.1. 屬性(Properties)

  • TfxSdkCommLib元件主要方法
屬性 功能說明
getDeviceId 獲取設備唯一ID
isGpsEnabled 判斷GPS是否打開
openGPSSettings 打開GPS設定界面
setGPSEnabled 打開或關閉GPS
hasSDCard 是否有SD卡
sendMessageDirectly 直接發送簡訊
sendMessage 調出發送簡訊界面,發送簡訊
callPhones 直接撥打電話
dialPhones 調出撥號界面,撥打電話
openWifiSettings 打開WIFI設定界面
isWifiEnabled 判斷WIFI狀態
setWifiEnabled 強制打開或關閉WIFI
isWifiConnected 判斷Wifi是否連線
openBlueToothSettings 打開藍芽設定
isBluetoothSupported 判斷手機是否支援藍芽
isBluetoothEnabled 判斷藍芽狀態
turnOnBluetooth 強制打開藍芽
turnOffBluetooth 強制關閉藍芽
openApn 打開APN設定界面
vibrator 呼叫手機震動

# 7.1.1. getDeviceId方法

function getDeviceId: string;
1

  獲取設備唯一ID。

var
 v:string:
begin
 v := fxSdkCommLib1.getDeviceId;
end;
1
2
3
4
5

# 7.1.2. isGpsEnabled方法

function isGpsEnabled: Boolean;
1

  判斷設備GPS是否打開 。

# 7.1.3. openGPSSettings方法

procedure openGPSSettings;
1

   打開設備GPS設定界面。

if not fxSdkCommLib1.isGpsEnabled then
begin
    showmessage('GPS狀態:關閉!');
end
else
begin
    showmessage('GPS狀態:打開!');
end;
1
2
3
4
5
6
7
8

# 7.1.4. setGPSEnabled方法

procedure setGPSEnabled(AGPSEnabled: Boolean);
1

   打開或關閉GPS。

//強制打開GPS
fxSdkCommLib1.setGPSEnabled(True);
//強制關閉GPS
fxSdkCommLib1.setGPSEnabled(false);
1
2
3
4

# 7.1.5. hasSDCard方法

function hasSDCard: Boolean;
1

  判斷設備是否有SD卡。

if not fxSdkCommLib1.hasSDCard then
begin
    showmessage('沒有SD卡!悠著點!');
end
else
begin
    showmessage('有SD卡!該你任性!');
end;
1
2
3
4
5
6
7
8

# 7.1.6. sendMessageDirectly方法

procedure sendMessageDirectly(phoneNumber: String; smsContent: String);
1

  指定一個號碼,直接發送簡訊。

fxSdkCommLib1.sendMessageDirectly('18688889999', '歡迎使用這是PinToo');
1

# 7.1.7. sendMessage方法

procedure sendMessage(phoneNumber: String; smsContent: String);
1

  調出發送簡訊界面,發送簡訊。

fxSdkCommLib1.sendMessage('18688889999', '歡迎使用這是PinToo!');
1

# 7.1.8. callPhones方法

procedure callPhones(phoneNumber: String);
1

  指定一個號碼,直接撥打電話。

fxSdkCommLib1.callPhones('18688889999');
1

# 7.1.9. dialPhones方法

procedure dialPhones(phoneNumber: String);
1

  調出撥號界面,撥打電話。

fxSdkCommLib1.dialPhones('18688889999');
1

# 7.1.10. openWifiSettings方法

procedure openWifiSettings;
1

  打開設備WIFI設定界面。

fxSdkCommLib1.openWifiSettings;
1

# 7.1.11. isWifiEnabled方法

function isWifiEnabled: Boolean;
1

  判斷設備WIFI連線狀態。

if not fxSdkCommLib1.isWifiEnabled then
begin
    showmessage('Wifi狀態:關閉!');
end
else
begin
    showmessage('Wifi狀態:打開!');
end;
1
2
3
4
5
6
7
8

# 7.1.12. setWifiEnabled方法

procedure setWifiEnabled(AWifiEndabled: Boolean);
1

  強制打開或關閉WIFI。

//強制打開WIFI
fxSdkCommLib1.setWifiEnabled(True);
//強制關閉WIFI
fxSdkCommLib1.setWifiEnabled(false);
1
2
3
4

# 7.1.13. isWifiConnected方法

function isWifiConnected: Boolean;
1

  判斷設備Wifi是否連線。

if not fxSdkCommLib1.isWifiConnected then
begin
    showmessage('Wifi沒有連線!');
end
else
begin
    showmessage('Wifi已連線!');
end;
1
2
3
4
5
6
7
8

# 7.1.14. openBlueToothSettings方法

procedure openBlueToothSettings;
1

  打開藍芽設定。

# 7.1.15. isBluetoothSupported方法

function isBluetoothSupported: Boolean;
1

  判斷設備是否支援藍芽。

# 7.1.16. isBluetoothEnabled方法

function isBluetoothEnabled: Boolean;
1

  判斷設備藍芽狀態。

if not fxSdkCommLib1.isBluetoothSupported then
begin
    showmessage('蒐集不支援藍芽!');
end
else
begin
    showmessage('手機支援藍芽!');
end;
1
2
3
4
5
6
7
8

# 7.1.17. turnOnBluetooth方法

function turnOnBluetooth: Boolean;
1

  強制打開藍芽。

fxSdkCommLib1.turnOnBluetooth;
1

# 7.1.18. turnOffBluetooth方法

procedure turnOffBluetooth;
1

  強制關閉藍芽。

fxSdkCommLib1.turnOffBluetooth;
1

# 7.1.19. openApn方法

procedure openApn;
1

  打開APN設定界面。

fxSdkCommLib1.openApn;
1

# 7.1.20. vibrator方法

procedure vibrator(AMilliseconds: Int64 = 1000);
1

  呼叫手機震動。

//震動五秒
fxSdkCommLib1.vibrator(5000);
1
2

# 8. TfxSignaturePad

  • 引用單元 CCSignaturePad

  一個手寫板簽名元件。

  你可以通過TfxSignaturePad來實現電子簽名功能。

# 8.1. 屬性(Properties)

  • TfxSignaturePad元件主要屬性
屬性 功能說明
SignatureBitmap 手寫簽名圖

# 8.1.1. SignatureBitmap屬性

  手寫簽名圖,手寫簽名完成時,影象儲存在這個屬性中。

//將簽名圖顯示在圖片元件
fximage1.Bitmap := fxSignaturePad1.SignatureBitmap;
1
2

# 8.2. 方法(Methods)

  • TfxSignaturePad元件主要方法
方法 功能說明
Clear 清除簽名

# 8.2.1. Clear方法

  清除手寫簽名圖。

//清除簽名
fxSignaturePad1.clear;
1
2

# 9. TfxXFVoiceTTS

  • 引用單元 CCXFVoiceTTS

  TfxXFVoiceTTS是一個基於訊飛技術的可以將語音轉換成文字的元件。

# 9.1. 屬性(Properties)

  • TfxXFVoiceIAT元件主要屬性
屬性 功能說明
AppId 指定訊飛AppId
Lag 指定語音口音

# 9.1.1. AppId屬性

  AppId是一個必要的屬性,它需要到訊飛官方申請。https://www.iflyrec.com/

# 9.1.2. Lag屬性

  Lag是指語音的口音型別,預設為mandarin(標準普通話)。

# 9.2. 事件(Events)

*TfxXFVoiceIAT元件主要事件

事件 何時觸發
OnRecognizerResult 語音識別成功后觸發

# 9.2.1. OnRecognizerResult事件

  語音識別成功返回文字內容。

Procedure fxXFVoiceIAT1OnRecognizerResult(Sender: TObject; AResult: string);
Begin
   fxmemo1.Lines.Add(AResult);
End;
1
2
3
4

# 9.3. 方法(Methods)

  • TfxXFVoiceIAT元件主要方法
方法 功能說明
IAT_StartListening 開始監聽語音
IAT_StopListening 停止語單識別
IAT_Cancel 取消語音識別
IAT_UploadContacts 上傳聯繫人
IAT_UploadUserwords 上傳詞條

# 9.3.1. IAT_StartListening方法

  procedure IAT_StartListening;overload;
  procedure IAT_StartListening(ACallbackProc: TProc<System.string>);overload;
1
2

  執行此方法,設備麥克風會監聽我們說出來的語音,然後將語音轉換為文字內容。

fxXFVoiceIAT1.IAT_StartListening(Nil);
1

# 9.3.2. IAT_StopListening方法

  procedure IAT_StopListening;
1

  執行此方法,停止語音識別。

fxXFVoiceIAT1.IAT_StopListening;
1

# 9.3.3. IAT_Cancel方法

  procedure IAT_Cancel;
1

  執行此方法,取消語音識別。

fxXFVoiceIAT1.IAT_Cancel;
1

# 9.3.4. IAT_UploadContacts方法

  procedure IAT_UploadContacts;
1

  上傳聯繫人、詞表,可以使雲端識別聯繫人和詞表更加準確,這裡上傳的內容對語義理解同樣有效。

fxXFVoiceIAT1.IAT_UploadContacts;
1

# 9.3.5. IAT_UploadUserwords方法

  procedure IAT_UploadUserwords(Userwords: string);
1

  上傳聯繫人、詞表,可以使雲端識別聯繫人和詞表更加準確,這裡上傳的內容對語義理解同樣有效。

fxXFVoiceIAT1.IAT_UploadUserwords('{"userword":[{"name":"我的常用詞","words":["佳晨實業","蜀南庭苑","高蘭路","復聯二"]}]}');
1

# 10. TfxXFVoiceIAT

  • 引用單元 CCXFVoiceIAT

  TfxXFVoiceTTS是一個基於訊飛技術的可以將文字轉換成語音的元件。

# 10.1. 屬性(Properties)

  • TfxXFVoiceIAT元件主要屬性
屬性 功能說明
AppId 指定訊飛AppId
Voicer 指定語音型別

# 10.1.1. AppId屬性

  AppId是一個必要的屬性,它需要到訊飛官方申請。https://www.iflyrec.com/

# 10.1.2. Voicer屬性

  Voicer屬性是指定文字轉換成語音后,以什麼語音型別播放。

  • 語音型別如下:
型別 說明
xiaoyan 小燕 青年女聲 中英文(普通話) 預設
xiaoyu 小宇 青年男聲 中英文(普通話)
catherine 凱瑟琳 青年女聲 英文
henry 亨利 青年男聲 英文
vimary 瑪麗 青年女聲 英文
vixy 小研 青年女聲 中英文(普通話)
xiaoqi 女聲 中英文(普通話)
vixf 小峰 青年男聲 中英文(普通話)
xiaomei 小梅 青年女聲 中英文(粵語)
vixl 小莉 青年女聲 中英文(臺灣普通話)
xiaolin 曉琳 青年女聲 中英文(臺灣普通話)
xiaorong 小蓉 青年女聲 漢語(四川話)
vixyun 小蕓 青年女聲 漢語(東北話)
xiaoqian 小倩 青年女聲 漢語(東北話)
xiaokun 小坤 青年男聲 漢語(河南話)
xiaoqiang 小強 青年男聲 漢語(湖南話)
vixying 楠楠 童年女聲 漢語(普通話)
xiaoxin 楠楠 童年女聲 漢語(普通話)
nannan 楠楠 童年女聲 漢語(普通話)
vils 老孫 老年男聲 漢語(普通話)
Mariane Mariane 法語
Allabent Allabent 俄語
Gabriela Allabent 俄語
Abha Abha 印地語
XiaoYun Abha 印地語

# 10.2. 方法(Methods)

  • TfxXFVoiceIAT元件主要方法
方法 功能說明
TTS_Play 朗讀
TTS_Cancel 取消播放
TTS_Pause 暫停播放
TTS_Resume 恢復播放

# 10.2.1. TTS_Play方法

{
功能:文字轉語音播放
參數:ATTS_Text 需要轉換為語音的文字內容
}
procedure TTS_Play(ATTS_Text: string);
1
2
3
4
5

# 10.3. 示例

fxXFVoiceTTS1.AppId := '指定一個AppId';
fxXFVoiceTTS1.Voicer := 'xiaomei'; //指定語音型別
fxXFVoiceTTS1.TTS_Play('我是中國人!');
1
2
3

# 11. TfxScrollText元件

  • 引用單元 CCScrollText

  一個滾動字幕元件。

# 11.1. 示列

  演示增加滾動字幕:

var
 Li:TCCScrollTextItem;
begin
  Li := fxScrollText1.Items.add;
  Li.Text := '慶祝中華人民共和國成立70週年!';
  
  Li := fxScrollText1.Items.add;
  Li.Text := '中國人民萬歲!!!';
  
  fxScrollText1.StartScroll;
end.

1
2
3
4
5
6
7
8
9
10
11
12

示例運行結果:


# 12. TfxWebView元件

  • 引用單元 CC5WebView

  一個Web瀏覽器,可以進行網頁瀏覽。

# 12.1. 示例

  指定一個網址實現打開網頁的功能。

fxWebView1.loadURL('Http://www.baidu.com');
1

# 13. fxTbsVideoPlayer

  • 引用單元 CCTbsVideoPlayer

  視訊播放控制元件。

  一行程式碼搞定播放: fxTbsVideoPlayer1.openVideo('rtsp://184.72.239.149/vod/mp4://BigBuckBunny_175k.mov');

  播放器同時支援頁面,小窗,全屏播放體驗,強大的解碼能力,包括mp4,rmvb,flv,avi等26種視訊格式支援。

  TBS播放器的播放場景不僅侷限於H5頁面播放,也可以接入一般的視訊流鏈接,比如本地檔案,網路的視訊流鏈接。

示例

//播放MP4
CCTbsVideoPlayer1.openVideo('http://39.107.118.131/uploads/Doc/leijia1.mp4');
//RTSP協議直播源
CCTbsVideoPlayer1.openVideo('rtsp://184.72.239.149/vod/mp4://BigBuckBunny_175k.mov');
//CCTV6高清
CCTbsVideoPlayer1.openVideo('http://ivi.bupt.edu.cn/hls/cctv6hd.m3u8');
//rtmp直播
CCTbsVideoPlayer1.openVideo('rtmp://47.52.36.155:8090/kk2/kkvideocg88');
1
2
3
4
5
6
7
8

# 14. TfxFlying

  • 引用單元 Flying

  TfxFlying元件是配合Flying使用的元件,將必要的列印配置傳遞給該元件的屬性,執行元件的方法即可將數據傳遞至列印伺服器進行列印操作。在使用該元件前請先閱讀Flying使用手冊。

# 14.1. 屬性

# 14.1.1. HTTPOptions

  使用 HTTP 列印模式時使用的屬性選項。其中的相關屬性專案說明如下:

屬性 說明
Host Flying列印服務端地址
Port Flying HTTP/WebSocket 列印服務監聽的埠號

# 14.1.2. MailOptions

  郵件相關設定選項。

屬性 說明
Addr 接收郵箱的地址
Body 郵件的正文內容
Enable 是否啟用郵件發送的功能
Subject 郵件的標題

# 14.1.3. MQTTOptions

  使用 MQTT 列印模式時使用的屬性選項。其中的相關屬性專案說明如下:

屬性 說明
BrokerHost MQTT 服務端的地址
BrokerPort MQTT 服務端服務監聽的埠號
Enabled 設定是否啟用 MQTT 連線
PrintPwd 列印的密碼
PrintTopic 列印服務訂閱的主題名稱
UserName MQTT 服務的使用者名稱
UserPwd MQTT 服務的密碼

# 14.1.4. PrintOptions

  列印服務的相關設定項。

屬性 說明
Data 輸入的列印數據,可通過 AddPrintData 方法自動產生
ExportFileType 設定導出的檔案型別
ExportFileUrl 設定導出檔案的URL
Preview 設定是否啟用檔案預覽
PrintCopies 設定檔案的列印份數
PrinterName 設定印表機的名稱,可通過 GetPrinerList 方法獲取印表機名稱
PrintOffsetX 列印偏移 X
PrintOffsetY 列印偏移 Y
PrintType 設定列印模式,可選 HTTP、MQTT、WebSocket
ReportName 設定列印的報表模板的名稱,可指定報表模板的檔名(*.fr3)或者報表模板的別名
ReportUrl 設定列印的報表的輸出地址
ReportVersion 報表版本號
TaskID 列印的任務ID,設定此項可用於區分不同列印客戶端的列印請求
Token 令牌,可用於列印客戶端的身份認證

# 14.1.5. WebSocketOptions

  使用 WebSocket 進行列印時的設定項。

屬性 說明
Authentication 是否啟用 WebSocket 身份認證
Compressed 是否啟用數據壓縮
Enabled 是否啟用 WebSocket 通訊連線
Host WebSocket 連線的主機的地址(Flying 服務端的地址)
Password WebSocket 使用身份認證連線時使用的密碼
Port WebSocket 服務監聽的埠號
SSL 是否啟用 SSL 連線
SSLPort 啟用SSL 連線時監聽的 WebSocket 服務埠號
URL WebSocket 服務路徑
UserName WebSocket 使用身份認證連線時使用的使用者名稱稱

# 14.2. 事件

# 14.2.1. OnReceivedError事件

procedure FlyingOnReceivedError(ASender: TObject; AError:String);
1

  當列印過程中出現錯誤時,可觸發此事件。AError 中包含了錯誤的提示資訊。

# 14.2.2. OnReceivedExport事件

procedure FlyingOnReceivedExport(ASender: TObject; AUrl:String);
1

  當列印包含輸出的檔案時觸發事件,AUrl 中包含了輸出檔案的路徑。

# 14.2.3. OnReceviedPrinter事件

procedure FlyingOnReceivedExport(ASender: TObject; APrinterList:String);
1

  當Flying 向客戶端發送印表機列表的資訊時觸發事件。APrinterList 中包含了印表機列表等資訊。

# 14.3. 方法(Methods)

  • TfxFlying元件主要方法
方法 功能說明
GetPrinterList 獲取Flying中介軟體的印表機列表
ReportPrint 直接列印
ReportPreview 報表預覽
AddPrintData 列印數據組裝

# 14.3.1. GetPrinterList方法

procedure GetPrinterList;
1

  獲取Flying中介軟體所在電腦上的印表機列表,供客戶端列印報表時選擇。使用的方式見下方。在呼叫該方法后,會在OnReceived事件中看到獲取的印表機列表地址。

//獲取印表機列表
Procedure btnGetPrintListOnClick(Sender: TObject);
Begin
  fxFlying1.GetPrinterList;
End;

Procedure fxFlying1OnReceivedPrinter(Sender: TObject; APrinterList: string);
Begin
  fxComboboxList.Items.CommaText := APrinterList;
  if fxComboBoxList.Items.Count <> 0  Then
    fxComboBoxList.ItemIndex := 0;
  fxComboBoxList.DropDown;
End;
1
2
3
4
5
6
7
8
9
10
11
12
13

# 14.3.2. ReportPrint方法

procedure ReportPrint;
1

  ReportPrint方法是呼叫Flying中介軟體,進行報表列印。

Procedure fxSuperButtonPrintOnClick(Sender: TObject);
//列印
//Print
Begin
  if fxcomboboxList.Count = 0 Then exit;
  fxFlying1.PrintOptions.PrinterName := fxcomboboxList.Items[fxcomboboxList.ItemIndex];
  fxRFDataSet1.SQL.Text := 'SELECT * FROM Basic_Unit';
  fxRFDataSet1.OpenData;
  fxRFDataSet1.PrintOptions.Data.Clear;
  fxFlying1.AddPrintData(fxRFDataSet1,'A');
  fxFlying1.ReportPrint;  
end;

Procedure fxFlying1OnReceivedExport(Sender: TObject; AUrl: string);
Begin
  fxShowFileView(Self.GetMsgLang('preview'),AUrl,'',Self.GetMsgLang('cancel'),Self.GetMsgLang('OK'))
End;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# 14.3.3. ReportPreview方法

procedure ReportPreview;
1

  ReportPreview方法是呼叫Flying中介軟體,進行報表輸出,並回傳到客戶端顯示。

Procedure fxSuperButtonPreviewOnClick(Sender: TObject);
//預覽
//Preview
Begin
  fxRFDataSet1.Connection := fxdm.DBConnection;
  fxRFDataSet1.SQL.Text := 'SELECT * FROM Basic_Unit';
  fxRFDataSet1.openData;
  fxRFDataSet1.PrintOptions.Data.Clear;
  fxFlying1.AddPrintData(fxRFDataSet1,'A'); 
  fxFlying1.ReportPreview;
End;

Procedure fxFlying1OnReceivedExport(Sender: TObject; AUrl: string);
Begin
  fxShowFileView(Self.GetMsgLang('preview'),AUrl,'',Self.GetMsgLang('cancel'),Self.GetMsgLang('OK'))
End;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# 14.3.4. PrintPdf方法

procedure PrintPdf(AUrl: String);
1

  從網路地址獲取 PDF 檔案併發送至 Flying 服務端執行列印。

# 14.3.5. PrintPic方法

procedure PrintPic(AUrl: String);
1

  從網路地址獲取圖片檔案併發送至 Flying 服務端執行列印。

# 15. TfxDateTimePickerTheme

  • 引用單元 CCDateTimePickerTheme

  TfxDateTimePickerTheme是配合TfxDateEdit元件進行日期選擇對話方塊樣式的控制。

  通過設定DialogTheme屬性完成主題的設定。


# 16. TfxVideoClient

  • 引用單元 uVideoClient

  TfxVideoClient是一個視訊串流客戶端元件,用來捕獲網路攝像頭視訊流並轉化成視訊。

  TfxVideoClient有三個重要屬性分別是:CamType攝像頭型別,Url攝像頭網終地址,Active啟用。

TfxVideoClient
  • CamType屬性說明
    • ctESP32_CAM:ESP32-CAM攝像頭
    • ctCAM:非ESP32-CAM攝像頭
Begin
  fxVideoClient1.Url :='http://192.168.1.115'; //攝像頭網路地址
  fxVideoClient1.Active := true;//啟用控制元件
End;
1
2
3
4

# 17. TfxDeviceInfo

  • 引用單元 CCDeviceInfo

  TfxDeviceInfo是一個獲取手機資訊的元件,可以獲取手機IMEI和IMSI資訊。

Begin
  Showmessage(fxDeviceInfo1.IMEI);//手機序列號
  Showmessage(fxDeviceInfo1.IMSI);//SIM卡串號
End;
1
2
3
4

# 18. TfxVideoServer

  • 引用單元 uVideoClient、uVideoStream

  TfxVideoServer 是一個視訊服務元件,用於拍攝視訊並進行實時直播。

# 18.1. 屬性

屬性 功能說明
CameraComponent 指定使用的相機元件,元件的型別為 TfxCameracomponent
ComboBoxResolution 指定解析度選擇的下拉框元件,元件的型別為 TfxComboBox
FlashMode 指定閃光燈模式
FocusMode 指定相機對焦的模式
ImageViewer 指定圖片的檢視元件,元件型別為 TfxImage
Port 設定視訊檢視的埠
Quality 設定視訊的畫質

# 18.2. 方法

# 18.2.1. Start

procedure Start;
1

  開啟視訊服務。

# 18.2.2. Stop

procedure Stop;
1

  停止視訊服務。

# 18.2.3. TakePicture

function TakePicture: String;
1

  拍攝截圖,返回截圖所在的位置。


# 19. TfxVideoRecorder

  • 引用單元 uVideoClient、uVideoStream

  TfxVideoRecorder 是一個視訊服務與錄製元件,用於拍攝視訊、錄製視訊與實時直播。

# 19.1. 屬性

屬性 功能說明
Active 是否啟用啟用元件
CameraIndex 指定使用的相機序號
CaptureRate 設定視訊捕捉的幀率
FlashMode 指定閃光燈的模式
FocusMode 指定相機對焦的模式
MaxDuration 指定視訊的最長持續時間,如設定為0表示不限定持續時間
MaxFileSize 指定最大的檔案大小,如設定為0表示不進行限定
OutputFile 指定輸出的檔案所在的目錄以及名稱,不設定則使用預設的設定進行儲存
Port 設定視訊檢視的埠
PreviewControl 設定預覽的控制元件名稱
Profile 設定視訊預設的畫質
VideoEncodingBitRate 設定編碼位元率
VideoFrameRate 設定編碼的幀率
VideoRecord 是否啟用視訊錄製的功能
快速設計控制元件
物聯網控制元件

← 快速設計控制元件 物聯網控制元件→

Copyright © 2021-2025 愛招飛IsoFace | ALL Rights Reserved
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式