對於那些沒有看到它的人來說,ZPL是一種基於文本的標記語言,用於從特殊用途打印機打印標籤。 UPS運輸標籤將是一個很好的例子。我需要學習如何爲ZPL編寫詞法分析器解釋器?
標記語言是相當原始的。有一些模態命令可以設置幾個狀態值,但是大部分語言都是一行,格式爲。沒有流量控制或嵌套。
我想寫一個渲染引擎來解釋ZPL並呈現給圖像。有幾個項目已經開始了這條道路,但這些項目還不夠完整,無法用於商業用途。
我的問題是:我需要學習如何編寫一個很好的<something>
來解析ZPL文檔並將其轉換爲我可以執行的命令? ('執行',我的意思是繪製。)
這是一個解析器嗎?一個詞法分析器?標記生成器?翻譯嗎?是否有一些編譯器設計理論的子集將成爲這類項目成功的最有效途徑? ......那叫什麼?
只是好奇,但你能分享你需要這個理由嗎?我與ZPL合作很多,雖然這將是一個有趣的工具,但我不知道我是否會需要它。這將是一個有趣的項目!謝謝! –
我們希望能夠在ZPL中編寫一次標記,並使用該標記打印到任何介質:ZPL打印機,激光打印機,屏幕圖像。我見過一種承諾一次編寫(使用C#)的產品,導出任何東西,標籤代碼。然而,該庫的ZPL輸出非常冗長。這使得ZPL打印太慢而不實用。 – user3384842
我想我遲到了,我也只是在說一個意見,但在我看來,沒有任何花哨的工具需要,因爲ZPL只是一個沒有嵌套的線性命令的序列,並且所有的命令都以「 ^「或」〜「字符,因此只要基本的正則表達式或甚至string.split(」「)就足夠了... –