Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [VB.NET] stampare codice a barre

    ciao,
    ho trovato in rete una funzione di generazione di codice a barre. Praticamente a partire da un numero di 8 o 13 cifre, mi crea una Picture a mod di codice a barre.

    Ora dovrei generare X codici a barre per poi stamparli su un foglio A4.

    visto che mi ci sto mettendo ora con VB.NET, vorrei sapere come potrei risolvere, cioè queste img come le impagino o dove le salvo prima di stamparle?


    ciao.

  2. #2
    avrei risolto il problema, prendendo quelle stampanti che stampano le etichette. Mettendo un rullo di grandezza x,y ogni volta che genero un codice a barra lo mando in stampa.

    Però se io ne devo fare 2000 tutte in una volta, cosi facendo mando 2000 stampe...non è che sia la cosa + bella.


    che dite?

  3. #3
    Utente di HTML.it L'avatar di Mychy
    Registrato dal
    Oct 2000
    Messaggi
    794
    Per curiosità, dove hai trovato l'OCX?

  4. #4
    ho trovato uno zip con i file di progetto.

  5. #5
    Utente bannato
    Registrato dal
    Mar 2002
    Messaggi
    1,811
    link please

    tanks :tongue:

  6. #6
    date un'occhiata

    dovrebbero essere nei primi 3, non ricordo dove.

    Non vorrei fare il maleducato....ma mi potreste dare un'idea su come risolvere?

  7. #7
    Utente di HTML.it L'avatar di Mychy
    Registrato dal
    Oct 2000
    Messaggi
    794
    Per impaginare potresti risolvere o con cristalreport oppure con System.Drawing

  8. #8
    il fatto è che io devo generare X numeri di immagini.

    Anche se non risiedono da nessuna parte(fisicamente), le posso mettere dentro a cristal report? come?

    codice:
     Public Sub PrintEANBarCode(ByVal strEANCode As String, _
                                    ByVal objPicBox As PictureBox, _
                                    Optional ByVal sngX1 As Single = (-1), _
                                    Optional ByVal sngY1 As Single = (-1), _
                                    Optional ByVal sngX2 As Single = (-1), _
                                    Optional ByVal sngY2 As Single = (-1), _
                                    Optional ByVal FontForText As Font = Nothing)
    
            Dim K As Single
            Dim sngPosX As Single
            Dim sngPosY As Single
            Dim sngScaleX As Single
            Dim strEANBin As String
            Dim strFormat As New StringFormat()
    
            '*
            '* Convert the code on its binary representation
            '*
            strEANBin = EAN2Bin(strEANCode)
    
            '*
            '* Define the font to be printed
            '*
            If (FontForText Is Nothing) Then
                FontForText = New Font("Courier New", 10)
            End If
    
            '*
            '* Defines the boundaries to the barcode
            '*
            If sngX1 = (-1) Then sngX1 = 0
            If sngY1 = (-1) Then sngY1 = 0
            If sngX2 = (-1) Then sngX2 = objPicBox.Width
            If sngY2 = (-1) Then sngY2 = objPicBox.Height
    
            '*
            '* Defines the boundaries of the barcode
            '*
            sngPosX = sngX1
            sngPosY = sngY2 - CSng(1.5 * FontForText.Height)
    
            '*
            '* Clears the area
            '*
            objPicBox.CreateGraphics.FillRectangle(New System.Drawing.SolidBrush(objPicBox.BackColor), sngX1, sngY1, sngX2 - sngX1, sngY2 - sngY1)
            
            '*
            '* Calculates the scale
            '*
            sngScaleX = (sngX2 - sngX1) / strEANBin.Length
    
            '*
            '* Draw the BarCode
            '*
            For K = 1 To Len(strEANBin)
                If Mid(strEANBin, K, 1) = "1" Then
                    objPicBox.CreateGraphics.FillRectangle(New System.Drawing.SolidBrush(objPicBox.ForeColor), sngPosX, sngY1, sngScaleX, sngPosY)
                End If
                sngPosX = sngX1 + (K * sngScaleX)
            Next K
    
            '*
            '* Draw the human-friendly code
            '*
            strFormat.Alignment = StringAlignment.Center
            strFormat.FormatFlags = StringFormatFlags.NoWrap
            objPicBox.CreateGraphics.DrawString(strEANCode, FontForText, New System.Drawing.SolidBrush(objPicBox.ForeColor), CSng((sngX2 - sngX1) / 2), CSng(sngY2 - FontForText.Height), strFormat)
    
    
        End Sub
    questa funzione crea in automatico l'img e la infila dentro ad una Picture...come dovrei cambiare per metterla dentro ad un report?

  9. #9
    Utente di HTML.it L'avatar di Mychy
    Registrato dal
    Oct 2000
    Messaggi
    794
    Secondo me dovresti crearti un report che carichi l'immagine ad es. codice.jpg poi quando crei l'immagine con il codice a barre fai si che l'immagine venga nominata codice.jpg

  10. #10
    dalla funzione che ho postato, come dovrei modificare per creare fisicamente l'immagine?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.