【小y設計】二維碼條形碼列印編輯器
條碼列印,價格標籤列印,需要對列印進行排版,於是設計了一個簡單的編輯器
支援條碼二維碼列印進行編輯排版,支援文字、圖片、條碼、二維碼、直線,能自由拖拉,刪除,並可儲存為模版。 介面如下 (下載Demo 體驗):
左邊為引數設定,右邊為可視編輯區,支援自由拖拉,按Del鍵刪除層。
首先點選左邊最上面的紙張設定,設定紙張大小。可以直接在下拉框中選擇常用的紙張大小,也可以自定義尺寸。設定好後點擊“儲存設定"按鈕,則編輯區顯示相應尺寸的紙張。然後在紙張上自由插入條碼、圖片、文字、直線。
支援簡單的時間變數,比如文字內容裡插入了”{當前時間}“變數,則當觸發列印操作的時候,再取當前時間,並替換該變數:
程式原始碼截圖:
關鍵技術點:
1.實現如Photoshop類似的圖層概念
剛開始準備使用GDI+繪製圖層,然後用滑鼠定位當前選中的物件,後來改進成用自定義控制元件實現,在控制元件上畫物件,只需要對控制元件新增統一的滑鼠事件就可以實現圖層移動、刪除等操作。
2.繪製條碼、二維碼,涉及中文問題、條碼編碼方式問題
使用的開源二維碼庫zxing,我之前的其他文章也有詳細介紹,不贅述。
//條碼型別 BarcodeFormat myBarcodeFormat; EncodingOptions myEncoding;if (this.CodeType == 1) //二維碼 { myBarcodeFormat = BarcodeFormat.QR_CODE; myEncoding = new QrCodeEncodingOptions() { Height = this.Height, Width = this.Width, Margin = 0, CharacterSet="UTF-8", PureBarcode = !this.IsShowText }; } else //條形碼 { myBarcodeFormat = BarcodeFormat.CODE_128; myEncoding = new EncodingOptions() { Height = this.Height, Width = this.Width, Margin = 0, PureBarcode = !this.IsShowText }; } //生成條碼QrCodeEncodingOptions BarcodeWriter writer = new BarcodeWriter { Format = myBarcodeFormat, Options = myEncoding, Renderer = (IBarcodeRenderer<Bitmap>)Activator.CreateInstance(typeof(BitmapRenderer)) }; Bitmap barImg= writer.Write(this.Content);
這裡強調一點是,使用UTF-8編碼防止中文亂碼。其二,條碼編碼方式使用Code_128,支援任意ascii碼。
相關推薦
【小y設計】二維碼條形碼列印編輯器
條碼列印,價格標籤列印,需要對列印進行排版,於是設計了一個簡單的編輯器 支援條碼二維碼列印進行編輯排版,支援文字、圖片、條碼、二維碼、直線,能自由拖拉,刪除,並可儲存為模版。 介面如下 (下載Demo 體驗): 左邊為引數設定,右邊為可視編輯區,支援自由拖拉,按Del鍵刪除層。 首先點選左邊最上面
【轉】二維碼生成原理
char 方法 選擇 規則 什麽是 fff mode 進行 數字相加 原文鏈接:QR碼生成原理-QR Code(ISO 18004)編碼方式 一、什麽是QR碼 QR碼屬於矩陣式二維碼中的一個種類,由DENSO(日本電裝)公司開發,由JIS和ISO將其標準化。QR碼的樣子
【記】二維碼生成及解析功能
前臺渲染到後臺 //生成二維碼放入資料夾裡 public void testEncode() throws FileNotFoundException, Exception { //選中的list List<String> selec
【Jquery】- 二維碼
浪費了“黃金五年”的Java程式設計師,還有救嗎? >>>
【小超_Android】GitHub源碼項目整理,希望對大家有幫助
軟件 parcel simon acc ren sgu fun ttr 文檔 收集的經常使用Github上比較優秀的項目,希望對大家日常開發有所幫助: AndroidSlidingMenu https://github.com/jfeinstein10/S
java微信小程序參數二維碼生成帶背景圖加字體(無限生成)
width sts addheader parent mob leo asics con system 需求 : 1,因為項目需求 ,生成數以萬計的二維碼 2 ,每個二維碼帶不同的參數 3,二維碼有固定背景圖
通過數據流處理-微信小程序生成臨時二維碼
ant eat index ppi fun ppm nload his gif 1.小程序代碼 onLoad: function (options) { var that = this api.Login(function (login) {
小程序參數二維碼自動生成
參數 自動 bubuko clas target 掃碼 info blank 二維碼 當小程序審核通過後,那麽線上的小程序二維碼是如何生成呢?芝麻小程序碼提供了程序二維碼生成工具。 網址如下 https://weixin.hotapp.cn 芝麻小程
小程序參數二維碼生成
ima 知識 contents true pty exe 準備 field 小程序 總所周知,小程序無法分享到朋友圈,但是圖片可以。只要小程序能生成包含信息與小程序參數二維碼,即可達到很好的傳播效果。 例:拉勾網。 基礎知識準備 appid與appsecr
微信小遊戲 帶引數二維碼生成
參考: 微信小程式-獲取小程式碼 微信小遊戲開發文件-小遊戲獲取二維碼開放能力開發 一、 請求微信介面,獲取token https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&
【演算法 詳解】 二維動態規劃
馬攔過河卒 原題傳送門 這一到題目也是比較基礎的動態規劃,也可以理解為是遞推,主要是運用加法原理,思維難度不大。我們要求從 (0,0) ( 0
微信小程式掃普通二維碼跳轉
最近一需求,是要做小程式掃普通二維碼跳轉。看了看微信文件一頭霧水,寫的不是很清楚。 官方文件傳送門:https://developers.weixin.qq.com/miniprogram/introduction/qrcode.html#功能介紹 文件上的幾個要點
小程式中繪製二維碼
小序 一個新的小程式專案,VIP親子年卡(以下簡稱客戶端), 和一個對應的商家端, 在做的過程中有一個需求,在客戶端展示二維碼, 商家端掃碼獲取資訊。 既然需求已經訂了,就搞一搞繪製二維碼 先寫元素 <view class='hxm-bg'> <view c
B介面-微信小程式帶引數二維碼的生成
介面B:適用於需要的碼數量極多,或僅臨時使用的業務場景 介面地址:https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=ACCESS_TOKEN 注意:通過該介面生成的小程式碼,永久有效,數量暫無限制。使用者掃描該碼進入小程式
微信小程式掃描二維碼條形碼 (wx.scanCode)
前言 在業務中遇到需要獲取商品的二維碼的資訊返回商品的二維碼資訊,在呼叫後臺的介面,首先想到用小程式的Api,wx.scanCode(Object object)獲取二維碼資訊。 支援相機掃描或者相簿獲取二維碼。 getScancode: function () {
【數字影象處理】二維(2D)線性插值的應用
應用情況 在使用matlab對影象進行各種操作的時候經常要使用插值進行計算。 例如:影象縮放、影象旋轉、仿射變換等等。 線性插值 先介紹線性插值的概念。 已知兩個點(x1, y1)、(x2, y2),求它們中間橫座標為x的點的y值。 則可以利用如下公式進行插值
微信小程式動態生成二維碼
預覽效果如下 思路 1.先引用qrcode.js(自己從網上下載) 2.設定二維碼大小 3. 繪製二維碼 4. 提交按鈕重新整理獲取二維碼 wxml wxss js樣式就引入onLoad裡的內容,其他的和上部分思路里的一樣,直接加入裡面就好了
刷題記錄【ZJOI2007棋盤製作】二維DP,懸線法。。。
https://www.luogu.org/problemnew/show/P1169 題目描述 國際象棋是世界上最古老的博弈遊戲之一,和中國的圍棋、象棋以及日本的將棋同享盛名。據說國際象棋起源於易經的思想,棋盤是一個
微信小程式帶參二維碼
需求:生成小程式中的海報,需要小程式二維碼可以使使用者儲存到本地在朋友圈分享 生成二維碼工具類程式碼如下: 1 package com.aone.foottalk.action.wx.util; 2 3 import java.io.File; 4 import j
掃描普通二維碼開啟小程式(小程式帶參二維碼) java+postman
1、首先獲取access_token String requestUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_cr