基於矢量的發生器是生成條形碼的最佳方法嗎?如果是,它將使用的命名空間是什麼?它是如何使用的?任何人都可以分享這方面的知識嗎?基於矢量的生成器是創建條形碼的最佳方式嗎?
回答
假設我們正在談論像條形碼UPC,基於矢量的一代是不是必須的。這是代表一些垂直線的問題。因此,您可以使用任何圖形庫甚至直接訪問視頻緩衝區輕鬆完成此操作。如果您需要更大的條形碼,您可以用多個像素表示一個位。我猜你不需要使用任何插值。但是如果你需要一定的尺寸(像素/釐米等),基於矢量的解決方案可能會很少,但仍然不是必須的。
用於生成可縮放條形碼圖形的C#源代碼示例。
步驟:
1)打開一個新的C#Windows窗體名爲BarCode
樣本項目。
2)添加一個PictureBox
並改變BackColor
到White
並Dock
到Fill
。
3)將Load
和Resize
事件添加到Form1
。
4)複製&將以下源代碼粘貼在Form1.cs
文件上。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace BarCode
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public bool[] barCodeBits;
private void Form1_Load(object sender, EventArgs e)
{
Random r = new Random();
int numberOfBits = 100;
barCodeBits = new bool[numberOfBits];
for(int i = 0; i < numberOfBits; i++) {
barCodeBits[i] = (r.Next(0, 2) == 1) ? true : false;
}
Form1_Resize(null, null);
}
private void Form1_Resize(object sender, EventArgs e)
{
int w = pictureBox1.Width;
int h = pictureBox1.Height;
pictureBox1.Image = new Bitmap(pictureBox1.Width, pictureBox1.Height);
Graphics g = Graphics.FromImage(pictureBox1.Image);
Brush b = new SolidBrush(Color.Black);
for(int pos = 0; pos < barCodeBits.Length; pos++) {
if(barCodeBits[pos]) {
g.FillRectangle(b, ((float)pos/(float)barCodeBits.Length) * w, 0, (1.0f/(float)barCodeBits.Length) * w, h);
}
}
}
}
}
我正在談論code39或code 128條形碼。我想呈現我自己的。我將使用C#生成條形碼。您提到了直接訪問視頻緩衝區,我們如何實現這一目標? – Akshay 2012-07-19 08:23:11
我是在泛泛而談,而不是平臺/語言特定。使用.NET,我建議使用GDI +。我想你已經知道如何生成條形碼,但是你正在尋找一種方法來將它們渲染成圖像,對嗎?如果是這樣,我會盡快更新我的問題。 – 2012-07-19 11:36:53
Yup tats rite。我已經在研究如何使用位圖手動繪製每條線,但發現繪製條形碼線有點困難。 – Akshay 2012-07-19 11:50:11
您不必使用基於矢量的圖形來開發條形碼。我其實看看this link on codeproject,因爲大部分工作已經完成了。這生成了所需條形碼的位圖。
我經歷了許多第三方庫,我不想使用這些庫。我想呈現我自己的。 – Akshay 2012-07-20 04:58:29
@Akshay - 鏈接不是第三方庫 - 它是完整的來源,使您能夠自己渲染! – 2012-07-20 07:25:23
- 1. 用UIImageView創建條形圖的最佳方法是什麼?
- 2. 在Android中生成/創建條形碼
- 3. 基於DWR的類編碼的最佳方式是什麼?
- 4. Mark V. Shaney仍然是生成文本的最佳方式嗎?
- 5. 創建形式的矢量101,1001,10001,...]
- 6. 運行python生成器清理代碼的最佳方式
- 7. 從矢量創建數組的最佳方法
- 8. 創建基於矢量彩虹色標,該矢量的順序
- 9. 基於其他矢量的矢量創建和修改
- 10. 矢量圖形的最佳Flash引擎?
- 11. 是否有適用於JavaScript的Aztec條形碼生成器庫?
- 12. 這是使用LINQ創建頻率表的最佳方式嗎?
- 13. Prince是在Ruby on Rails中創建PDF的最佳方式嗎?
- 14. 什麼是創建衍生屬性的最佳方式
- 15. 在Python中繪製基於web的圖形的最佳方式
- 16. 生成大量數據的條形碼
- 17. 什麼是生成大量獨特促銷代碼的最佳方式?
- 18. 的最佳方式基於類型
- 19. 創建EObject時自動生成要素值的最佳方式是什麼?
- 20. 創建大量虛擬數據的最佳方式是什麼?
- 21. 什麼是創建全局變量的最佳方式?
- 22. 什麼是分析代碼來創建UML的最佳方式?
- 23. 創建具有基於另一矢量
- 24. Python化的方式來創建矢量
- 25. 生成excel報告的最佳方式
- 26. 生成數字的最佳方式
- 27. 生成報告的最佳方式
- 28. 用於保存基於矢量的3D圖形的格式
- 29. 從NSString顯示條形碼的最佳方式
- 30. 設計基於用戶生成內容的URI的最佳方式
什麼?你在說什麼條形碼?您是否考慮過尋找可以使用的第三方庫? – 2012-07-19 07:30:32
@MarkByers可能是一個普通條形碼,http://en.wikipedia.org/wiki/Barcode。 – alexn 2012-07-19 07:31:18
我正在談論code39或code 128條形碼。是的,我經歷了許多第三方庫,我不想使用這些庫。我想呈現我自己的。 – Akshay 2012-07-19 08:21:02