How to position LaTeX table in Overleaf - format

I have a correlation matrix output in R, when I paste it Overleaf the table is too far
to the right and some values are missing. I have the same issue with other tables as
well, how can I fix this? The code for this matrix is the following
\begin{table}[ht]
\centering
\begin{tabular}{rllllllllllllll}
\hline
& avsumarwinsorized & FE & dispstd & winsorizedNetOptLM & roa & roastd & RETURN & MV & beta & BTM & lognoa & winsmin & winsmax & winsmean \\
\hline
avsumarwinsorized & 1.000 & -0.017* & -0.018* & 0.068*** & -0.005 & -0.011 & 0.002 & -0.014 & -0.017* & -0.008 & -0.010 & 0.019* & 0.003 & 0.019* \\
FE & -0.026*** & 1.000 & 0.582*** & -0.205*** & -0.298*** & 0.290*** & -0.205*** & -0.351*** & 0.186*** & 0.358*** & -0.243*** & -0.089*** & -0.050*** & -0.091*** \\
dispstd & -0.025** & 0.557*** & 1.000 & -0.282*** & -0.444*** & 0.314*** & -0.338*** & -0.347*** & 0.230*** & 0.466*** & -0.153*** & -0.104*** & -0.057*** & -0.100*** \\
winsorizedNetOptLM & 0.073*** & -0.067*** & -0.050*** & 1.000 & 0.285*** & -0.090*** & 0.246*** & 0.072*** & -0.021** & -0.251*** & 0.032*** & 0.046*** & -0.092*** & 0.005 \\
roa & -0.017* & -0.068*** & -0.056*** & 0.160*** & 1.000 & -0.023** & 0.284*** & 0.284*** & -0.145*** & -0.522*** & 0.177*** & 0.064*** & 0.022** & 0.053*** \\
roastd & 0.003 & 0.048*** & 0.034*** & -0.074*** & -0.359*** & 1.000 & -0.092*** & -0.263*** & 0.098*** & -0.064*** & -0.102*** & -0.103*** & -0.075*** & -0.118*** \\
RETURN & -0.007 & -0.062*** & -0.049*** & 0.143*** & 0.156*** & -0.007 & 1.000 & 0.185*** & 0.065*** & -0.365*** & 0.029*** & 0.024** & 0.027*** & 0.018* \\
MV & -0.014 & -0.020** & -0.015* & 0.003 & 0.077*** & -0.055*** & 0.001 & 1.000 & -0.207*** & -0.346*** & 0.672*** & 0.067*** & 0.177*** & 0.117*** \\
beta & -0.019* & 0.068*** & 0.038*** & -0.045*** & -0.054*** & 0.055*** & 0.131*** & -0.121*** & 1.000 & 0.150*** & -0.096*** & -0.036*** & -0.040*** & -0.042*** \\
BTM & -0.015 & -0.075*** & -0.015 & -0.128*** & -0.107*** & 0.024** & -0.134*** & -0.056*** & 0.081*** & 1.000 & -0.238*** & -0.100*** & -0.061*** & -0.088*** \\
lognoa & -0.013 & -0.063*** & -0.028*** & 0.052*** & 0.096*** & -0.076*** & -0.023** & 0.313*** & -0.093*** & -0.091*** & 1.000 & 0.048*** & 0.152*** & 0.093*** \\
winsmin & 0.009 & -0.035*** & -0.023** & 0.038*** & 0.036*** & -0.048*** & 0.006 & -0.012 & -0.038*** & -0.056*** & 0.060*** & 1.000 & 0.357*** & 0.925*** \\
winsmax & 0.001 & -0.031*** & -0.011 & -0.087*** & 0.028*** & -0.016* & -0.001 & 0.081*** & -0.052*** & -0.018* & 0.152*** & 0.288*** & 1.000 & 0.550*** \\
winsmean & 0.010 & -0.036*** & -0.024** & 0.008 & 0.044*** & -0.056*** & -0.005 & 0.028*** & -0.049*** & -0.052*** & 0.104*** & 0.889*** & 0.513*** & 1.000 \\
\hline
\end{tabular}
\end{table}
Screenshot of the table in Overleaf

No way a table this large will reasonable fit onto a page. Even with
abbreviating some of the verrrrrrrrry long variable names
reducing the margins of the paper
using a landscape paper
it will still need an unreadable small size to fit on the page:
\documentclass{article}
\usepackage[landscape,hmargin=1cm]{geometry}
\begin{document}
\begin{table}[ht]
\centering
\tiny
\begin{tabular}{rllllllllllllll}
\hline
& avs. & FE & dispstd & win. & roa & roastd & RETURN & MV & beta & BTM & lognoa & winsmin & winsmax & winsmean \\
\hline
avs. & 1.000 & -0.017* & -0.018* & 0.068*** & -0.005 & -0.011 & 0.002 & -0.014 & -0.017* & -0.008 & -0.010 & 0.019* & 0.003 & 0.019* \\
FE & -0.026*** & 1.000 & 0.582*** & -0.205*** & -0.298*** & 0.290*** & -0.205*** & -0.351*** & 0.186*** & 0.358*** & -0.243*** & -0.089*** & -0.050*** & -0.091*** \\
dispstd & -0.025** & 0.557*** & 1.000 & -0.282*** & -0.444*** & 0.314*** & -0.338*** & -0.347*** & 0.230*** & 0.466*** & -0.153*** & -0.104*** & -0.057*** & -0.100*** \\
win. & 0.073*** & -0.067*** & -0.050*** & 1.000 & 0.285*** & -0.090*** & 0.246*** & 0.072*** & -0.021** & -0.251*** & 0.032*** & 0.046*** & -0.092*** & 0.005 \\
roa & -0.017* & -0.068*** & -0.056*** & 0.160*** & 1.000 & -0.023** & 0.284*** & 0.284*** & -0.145*** & -0.522*** & 0.177*** & 0.064*** & 0.022** & 0.053*** \\
roastd & 0.003 & 0.048*** & 0.034*** & -0.074*** & -0.359*** & 1.000 & -0.092*** & -0.263*** & 0.098*** & -0.064*** & -0.102*** & -0.103*** & -0.075*** & -0.118*** \\
RETURN & -0.007 & -0.062*** & -0.049*** & 0.143*** & 0.156*** & -0.007 & 1.000 & 0.185*** & 0.065*** & -0.365*** & 0.029*** & 0.024** & 0.027*** & 0.018* \\
MV & -0.014 & -0.020** & -0.015* & 0.003 & 0.077*** & -0.055*** & 0.001 & 1.000 & -0.207*** & -0.346*** & 0.672*** & 0.067*** & 0.177*** & 0.117*** \\
beta & -0.019* & 0.068*** & 0.038*** & -0.045*** & -0.054*** & 0.055*** & 0.131*** & -0.121*** & 1.000 & 0.150*** & -0.096*** & -0.036*** & -0.040*** & -0.042*** \\
BTM & -0.015 & -0.075*** & -0.015 & -0.128*** & -0.107*** & 0.024** & -0.134*** & -0.056*** & 0.081*** & 1.000 & -0.238*** & -0.100*** & -0.061*** & -0.088*** \\
lognoa & -0.013 & -0.063*** & -0.028*** & 0.052*** & 0.096*** & -0.076*** & -0.023** & 0.313*** & -0.093*** & -0.091*** & 1.000 & 0.048*** & 0.152*** & 0.093*** \\
winsmin & 0.009 & -0.035*** & -0.023** & 0.038*** & 0.036*** & -0.048*** & 0.006 & -0.012 & -0.038*** & -0.056*** & 0.060*** & 1.000 & 0.357*** & 0.925*** \\
winsmax & 0.001 & -0.031*** & -0.011 & -0.087*** & 0.028*** & -0.016* & -0.001 & 0.081*** & -0.052*** & -0.018* & 0.152*** & 0.288*** & 1.000 & 0.550*** \\
winsmean & 0.010 & -0.036*** & -0.024** & 0.008 & 0.044*** & -0.056*** & -0.005 & 0.028*** & -0.049*** & -0.052*** & 0.104*** & 0.889*** & 0.513*** & 1.000 \\
\hline
\end{tabular}
\end{table}
\end{document}

There is two ways for such a large table
Change the format to landscape
User scalebox to reduce the size (everything will be small, doesn't worth as a solution)

Related

Enlarge row-height dynamically with pictures size

I am building a table in LaTeX that contains a column of pictures. I would like the size of the rows related to those pictures to increase their height such that the picture stays inside its cell. I tried the \\[2cm] solution, but then the text in the cells of the same rows is not centered anymore. An example to be clearer:
\documentclass[]{article}
\usepackage{multirow}
\begin{document}
\begin{table}[h!]
\begin{tabular}{c|c|c|c|c c c|c c c}
\multirow{ 2}{*}{} & \multirow{ 2}{*}{\textbf{mesh}} & \multirow{ 2}{*}{\textbf{dofs}} & \multirow{ 2}{*}{\textbf{levels}} & \multicolumn{3}{|c|}{\textbf{iterations}} & \multicolumn{3}{|c}{\textbf{Conv Rate}} \\ \cline{5-10}
& & & & \footnotesize{SGMG} & \footnotesize{NMG} & \footnotesize{AMG} & \footnotesize{SGMG} & \footnotesize{NMG} & \footnotesize{AMG}\\\hline
\multirow{ 2}{*}{\textbf{1D}} & \multirow{ 2}{*}{\includegraphics[scale = .2]{path1}& \multirow{ 2}{*}{100k} & 2 & -&- & - & - & - & - \\
& & & 5 & -& -& - & - & - & - \\ \hline
\multirow{8}{*}{\textbf{2D}} & \multirow{ 2}{*}{\includegraphics[scale = .1]{path2}& \multirow{2}{*}{100k} & 2 & -&- & - & - & - & - \\
& & & 5 & -& -& - & - & - & - \\[2cm] \cline{2-10}
& \multirow{ 2}{*}{mesh22} & \multirow{2}{*}{100k} & 2 & -&- & - & - & - & - \\
& & & 5 & -& -& - & - & - & - \\ \cline{2-10}
&\multirow{ 2}{*}{mesh23} & \multirow{2}{*}{100k}& 2 & -&- & - & - & - & - \\
& & & 5 & -& -& - & - & - & - \\ \cline{2-10}
& \multirow{ 2}{*}{mesh24}& \multirow{2}{*}{100k}& 2 & -&- & - & - & - & - \\
& & & 5 & -& -& - & - & - & - \\ \hline
\end{tabular}
\end{table}
\end{document}
Different approach: instead of merging the cell with your image, you could make the other cells have multiple lines
\documentclass[]{article}
\usepackage{graphicx}
\usepackage{array}
\usepackage{tabularx}
\usepackage[export]{adjustbox}
\newcolumntype{Y}{>{\centering\arraybackslash}X}
\usepackage{multirow}
\begin{document}
\begin{table}[h!]
\begin{tabularx}{\linewidth}{c|m{2cm}|Y|Y|YYY|YYY}
\hline
\multirow{9}{*}{2D} & \includegraphics[scale=.2,valign=t]{example-image-duck} & 100k & 2 \linebreak 5 & -\linebreak -&-\linebreak - & -\linebreak - & -\linebreak - & -\linebreak - & -\linebreak - \\
\cline{2-10}
& \includegraphics[width=1cm,height=3cm,valign=t]{example-image-duck} & 100k & 2 \linebreak 5 & -\linebreak -&-\linebreak - & -\linebreak - & -\linebreak - & -\linebreak - & -\linebreak - \\
\hline
\end{tabularx}
\end{table}
\end{document}
... or if you prefer vertically centred cells:
\documentclass[]{article}
\usepackage{graphicx}
\usepackage{array}
\usepackage{tabularx}
\usepackage[export]{adjustbox}
\newcolumntype{Y}{>{\centering\arraybackslash}X}
\usepackage{multirow}
\def\tabularxcolumn#1{m{#1}}
\begin{document}
\begin{table}[h!]
\begin{tabularx}{\linewidth}{c|m{2cm}|Y|Y|YYY|YYY}
\hline
\multirow{9}{*}{2D} & \includegraphics[scale=.2,valign=b]{example-image-duck} & 100k & 2 \linebreak 5 & -\linebreak -&-\linebreak - & -\linebreak - & -\linebreak - & -\linebreak - & -\linebreak - \\
\cline{2-10}
& \includegraphics[width=1cm,height=3cm,valign=b]{example-image-duck} & 100k & 2 \linebreak 5 & -\linebreak -&-\linebreak - & -\linebreak - & -\linebreak - & -\linebreak - & -\linebreak - \\
\hline
\end{tabularx}
\end{table}
\end{document}

vbscript not accessing outlook 2013/2016 subfolder off the inbox using redemption

I am running the below vbscript on outlook 2013/2016 and having issues trying to read emails in sub folders off the Inbox. I can read the Inbox emails. . Can anyone point me in the right directions?
thanks in advance.
Function CheckMail(strMailBox,strFolder,strFolderAbbr,strDetails)
'
olFolderInbox = 6
set Session = CreateObject("Redemption.RDOSession")
'
Set objOutlook = CreateObject("Outlook.Application")
Session.MAPIOBJECT = objOutlook.Session.MAPIOBJECT
set Store = Session.Stores.GetSharedMailbox(strMailBox)
set Inbox = Store.GetDefaultFolder(olFolderInbox)
'
Wscript.Echo "MailBox: " & Store.Name & " - " & Inbox.Name
If strFolder = "" then
set SubFolder = Inbox
strFolderAbbr = strMailBox & " Inbox"
Else
'set SubFolder = Inbox.Folders(strFolder)
'
set SubFolder = Inbox.Folders.Item(strFolder)
'
strFolderAbbr = strMailBox & " Inbox\" & strFolder
Wscript.Echo " Sub Folder: " & SubFolder
End If
'
nItems = SubFolder.Items.Count
If nHowlong > 1 Then
nHowlong = Round((nItems/110)/60,0)
strTime = " Hour(s)!!"
Else
nHowlong = Round(nItems/110,0)
strTime = " Minute(s)!!"
End If
Wscript.Echo nItems & " - Emails in folder " & strFolderAbbr & " About " & nHowlong & strTime
'" - " & nItems
'
for each Msg in SubFolder.Items
nCounter = nCounter + 1
'Wscript.Echo "Item " & nCounter & "/" & nItems & vbCRLF & "EID: " & Msg.EntryID & vbCRLF & "ABOUT: " & Msg.Subject & vbCRLF & "FROM: " & Msg.SenderName & vbCRLF & "LEVEL: " & IIf(Msg.Importance=2,"High",IIf(Msg.Importance=1,"Normal","Low")) & vbCRLF & "Status: " & IIf(Msg.UnRead, "Not Read", "Read") & vbCRLF & "Received: " & Msg.ReceivedTime & vbCRLF & "Body: " & Msg.Body
'& nCounter & "/" & nItems & vbCRLF & "EID: " & Msg.EntryID & vbCRLF & "ABOUT: " & Msg.Subject & vbCRLF & "FROM: " & Msg.SenderName & vbCRLF & "LEVEL: " & IIf(Msg.Importance=2,"High",IIf(Msg.Importance=1,"Normal","Low")) & vbCRLF & "Status: " & IIf(Msg.UnRead, "Not Read", "Read") & vbCRLF & "Received: " & Msg.ReceivedTime & vbCRLF & "Body: " & Msg.Body
'
' process all emails in the box
strRecords = strRecords & "REG-" &strFolderAbbr & "~" & Msg.Subject & "~" & Msg.ReceivedTime & "~" & IIf(Msg.UnRead, "Not Read", "Read") & "~" & Msg.SenderName & "~" &IIf(Msg.Importance=2,"High",IIf(Msg.Importance=1,"Normal","Low")) & "*"
On Error Resume Next
err.clear
if Err Then
'WScript.Echo "ReceivedTime was null"
End If
On Error GoTo 0
next
CheckMail = strRecords
End Function
Function IIf(bClause, sTrue, sFalse)
If CBool(bClause) Then
IIf = sTrue
Else
IIf = sFalse
End If
End Function
I finally figured out the code that works. I would first like to thank Dmitry for all the help he gave me. But this was a stuburn issue. the following code solved the problem. Please dont ask me to explain it just plain ole luck and trail and error.
set Session = CreateObject("Redemption.RDOSession")
Set objOutlook = CreateObject("Outlook.Application")
Session.MAPIOBJECT = objOutlook.Session.MAPIOBJECT
'Set Root foldedr of the mail box of the stores
set IPMRoot = Session.Stores.Item(strMailBox).IPMRootFolder
'Set the subfolder to the inbox
If strFolder = "" then
set subFolder = IPMRoot.Folders("InBox")
strFolderAbbr = strMailBox & " Inbox"
Else
'Set subfolder to subfolder chosen
set subFolder = IPMRoot.Folders("InBox").Folders(strFolder)
strFolderAbbr = strMailBox & " Inbox\" & strFolder
End If
'

Write Double Quotation Mark

I am trying to overwrite specific lines in a sequential file
For example if file has:
"1"
"Kii"
"Kii"
"Kii"
"Kii"
"2"
"Troy Martinez"
"Edoy"
"Edoy"
"69"
"3"
"Snoop Dogg"
"Weed"
"President Troy"
"420"
And I have this code to overwrite
Private Sub OverWrite()
Dim Count As Integer
On Error GoTo ErrSub
LineCount = 1
Open App.Path & "\Data.txt" For Input As #1
Do While Not EOF(1)
If LineCount < ((IDCount - 1) * 5) + 1 Or LineCount >= (IDCount * 5) + 1 Then
For Count = 0 To 4
Input #1, TextTemp
FileText = FileText & """ & Text1(Count) & """ & vbCrLf
LineCount = LineCount + 1
Next Count
Else
For Count = 0 To 4
Input #1, TextTemp
FileText = FileText & """ & TextTemp & """ & vbCrLf
LineCount = LineCount + 1
Next Count
End If
Loop
Close
Open App.Path & "\Data.txt" For Output As #1
Print #1, FileText
Close
ErrSub:
Resume Next
End Sub
Assuming my IDCount is 2, the text file becomes
" & Text1(Count) & "
" & Text1(Count) & "
" & Text1(Count) & "
" & Text1(Count) & "
" & Text1(Count) & "
" & TextTemp & "
" & TextTemp & "
" & TextTemp & "
" & TextTemp & "
" & TextTemp & "
" & Text1(Count) & "
" & Text1(Count) & "
" & Text1(Count) & "
" & Text1(Count) & "
" & Text1(Count) & "
How do I fix this? Thanks
I am very noob
Edit: My Option Explicit Is
Option Explicit
Dim IDCount As Integer
Dim LineCount As Integer
Dim FileText As String
Dim TextTemp
4 quotes ("""") escape a single quote (") so:
FileText = FileText & """" & Text1(Count) & """" & vbCrLf
(chr$(34) also outputs a ")

VBscript to target specific IP of NIC and change its DNS settings

I have currently been tasked to put together a script that will change the DNS settings of 15,000 ish servers. However, there is no common unique identifer of these NIC's other than their current DNS IP. My Question, Is it possible to somehow have my script do an ipfonfig /all and then if one of the NIC's reports back with the current DNS settings target that NIC for the new updated settings?
I was currently using the below script until i was made aware that some of the NIC will not be called "Production". Any suggestions are welcome! (powershell was not an option as we may be targeting some very old servers)
Dim strDns1
Dim strDns2
strDns1 = "10.10.10.10"
strDns2 = "10.10.10.10"
Set objShell = WScript.CreateObject("Wscript.Shell")
objShell.Run "netsh interface ip set dns name=""Production"" static "& strDns1, 0, True
objShell.Run "netsh interface ip add dns name=""Production"" addr="& strDns2, 0, True
Set objShell = Nothing
WScript.Quit
You can do the ipconfig query with a script like this:
Set wso = CreateObject("WScript.Shell")
Set execo = wso.Exec("ipconfig /all")
Set stdout = execo.StdOut
While Not stdout.AtEndOfStream
cmdOutput = cmdOutput & VbCrLf & stdout.ReadLine
Wend
wscript.echo cmdOutput
The main problem is this is just a string, so you have to parse it yourself, which is annoying and probably error prone.
I would rather suggest you take a look at the wmi class
Win32_NetworkAdapterConfiguration
which has a lot of information on the network connections. Only caveat with this WMI class is that it stores many values in arrays instead of strings so you can not just query for everything easily. Either pick something to query against that is a string like DNSDomain or just handle the logic within the script.
I'm agree with Syberdoor , You should use the Wmi Class
Win32_NetworkAdapterConfiguration
This code give you some informations :
Call ListDNSInfo()
'********************************************************************
Sub ListDNSInfo()
Dim ComputerName,IPConfigSet,IPConfig,BailObtenu,BailExpirant
ComputerName="."
On error resume next
set IPConfigSet = GetObject("winmgmts:{impersonationLevel=impersonate}!//" & ComputerName).ExecQuery _
("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE")
If Err.Number <> 0 Then
wscript.echo " - non accessible -"
Else
for each IPConfig in IPConfigSet
BailObtenu = IPConfig.DHCPLeaseObtained
BailExpirant = IPConfig.DHCPLeaseExpires
'---- Convertion des date et heure d'obtention et d'expiration des baux DHCP en un format lisible par l'utilisateur. ----
BailObtenu = mid(BailObtenu, 7, 2) & "/" & mid(BailObtenu, 5, 2) & "/" & mid(BailObtenu, 1, 4) & " - " & mid(BailObtenu, 9, 2)& ":" & mid(BailObtenu, 11, 2)& ":" & mid(BailObtenu, 13, 2)
BailExpirant = mid(BailExpirant, 7, 2) & "/" & mid(BailExpirant, 5, 2) & "/" & mid(BailExpirant, 1, 4) & " - " & mid(BailExpirant, 9, 2)& ":" & mid(BailExpirant, 11, 2)& ":" & mid(BailExpirant, 13, 2)
MsgBox " Configuration réseau de l'ordinateur " & ComputerName & vbcrlf & vbcrlf & _
"Nom Machine " & vbtab & " : " & IPConfig.DNSHostName & vbcrlf & _
"Carte active" & vbtab & " : " & IPConfig.Description & vbcrlf & _
"Adresse MAC " & vbtab & " : " & IPConfig.MACAddress & vbcrlf & _
"DHCP Activé" & vbtab & " : " & IPConfig.DHCPEnabled & vbcrlf & _
"Adresse IP " & vbtab & " : " & IPConfig.IPAddress(0) & vbcrlf & _
"Masque " & vbtab & vbtab & " : " & IPConfig.IPSubnet(0) & vbcrlf & _
"Passerelle " & vbtab & " : " & IPConfig.DefaultIPGateway(0) & vbcrlf & _
"Serveur DHCP " & vbtab & " : " & IPConfig.DHCPServer & vbcrlf & vbcrlf & _
"Serveur DNS " & vbtab & " : " & IPConfig.DNSServerSearchOrder(0) & vbcrlf & _
" " & vbtab & vbtab & " : " & IPConfig.DNSServerSearchOrder(1) & vbcrlf & _
"Serveur WINS " & vbtab & " : " & IPConfig.WINSPrimaryServer(0) & vbcrlf & _
" " & vbtab & vbtab & " : " & IPConfig.WINSSecondaryServer(0) & vbcrlf & vbcrlf & _
" Bail obtenu " & vbtab & " : " & BailObtenu & vbcrlf & _
" Bail expirant " & vbtab & " : " & BailExpirant _
,VbInformation,"Configuration réseau de l'ordinateur "
Next
End If
End Sub

How can I interpret this VB6 code?

I inherited a VB program that prints shipping labels. We need to update the barcode that gets printed and I'm trying to understand what the existing program is doing. There is a bunch of "WrittenData" (stored as "s") that seems to contain the Postscript code to produce the labels, but I haven't found anywhere that specifies the meaning of half this stuff.
Public Function PostScriptItem(address As Variant, Optional intPageNumberOut As Integer = 1, Optional intPageNumberIn As Integer = 2) As String
' 0 - MatchUpId
' 1 - Our Barcode
' 2 - Outgoing PostNet Code
' 3 - Outgoing Line 1
' 4 - Outgoing Line 2 (optionally EMPTY)
' 5 - Outgoing Line 3
' 6 - Outgoing Line 4
' 7 - Outgoing PlaNET Code
' 8 - Incoming PostNet Code
' 9 - Incoming Line 1
'10 - Incoming Line 2 (optionally EMPTY)
'11 - Incoming Line 3
'12 - Incoming Line 4
'13 - Incoming PlaNET Code
'14 - Title Id
'Escape Parenthesis and Backslashes
Dim tPos As Integer
For tPos = 0 To 14 Step 1
address(tPos) = Replace(address(tPos), "\", "\\")
address(tPos) = Replace(address(tPos), "(", "\(")
address(tPos) = Replace(address(tPos), ")", "\)")
Next tPos
Dim s As String
Dim pos As Integer
Dim fsize As Integer
Dim strBarcodeCaption As String
strBarcodeCaption = address(1) & " " & address(14) & " " & address(0)
pos = 50
fsize = 12
s = s & "%%Page: " & CStr(intPageNumberOut) & " " & CStr(intPageNumberOut) & vbCrLf & _
"<< /Duplex true >> setpagedevice" & vbCrLf & _
"<< /Tumble true >> setpagedevice" & vbCrLf & _
"%%BeginPageSetup" & vbCrLf & _
"180 rotate" & vbCrLf & _
"/pagelevel save def" & vbCrLf & _
"%%EndPageSetup" & vbCrLf & _
"newpath" & vbCrLf & _
"-338 -205 translate" & vbCrLf & _
"/Courier-Bold findfont 6 scalefont setfont" & vbCrLf & _
"newpath" & vbCrLf
s = s & "32 104 moveto (" & strBarcodeCaption & ") show" & vbCrLf & _
"newpath" & vbCrLf
s = s & "12 -450 translate" & vbCrLf & _
"62 104 moveto (" & strBarcodeCaption & ") show" & vbCrLf & _
"newpath" & vbCrLf & _
"30 80 moveto (^104" & address(1) & ") (height=0.3) code128 barcode" & vbCrLf & _
"newpath" & vbCrLf
s = s & "/Helvetica findfont 11 scalefont setfont" & vbCrLf & _
"0 " & CStr(pos) & " moveto (" & address(3) & ") show" & vbCrLf & _
"newpath" & vbCrLf
pos = pos - fsize
If address(4) <> Empty Then
s = s & "0 " & CStr(pos) & " moveto (" & address(4) & ") show" & vbCrLf & _
"newpath" & vbCrLf
pos = pos - fsize
End If
s = s & "0 " & CStr(pos) & " moveto (" & address(5) & ") show" & vbCrLf & _
"newpath" & vbCrLf
pos = pos - fsize
s = s & "0 " & CStr(pos) & " moveto (" & address(6) & ") show" & vbCrLf & _
"newpath" & vbCrLf
pos = pos - fsize - 5
s = s & "1 " & CStr(pos) & " moveto (" & address(2) & ") () postnet barcode" & vbCrLf & _
"%%PageTrailer" & vbCrLf & _
"pagelevel restore" & vbCrLf & _
"showpage" & vbCrLf
s = s & "%%Page: " & CStr(intPageNumberIn) & " " & CStr(intPageNumberIn) & vbCrLf & _
"<< /Duplex true >> setpagedevice" & vbCrLf & _
"<< /Tumble true >> setpagedevice" & vbCrLf & _
"%%BeginPageSetup" & vbCrLf & _
"/pagelevel save def" & vbCrLf & _
"210 711 translate" & vbCrLf & _
"%%EndPageSetup" & vbCrLf & _
"newpath" & vbCrLf & _
"/Courier-Bold findfont 6 scalefont setfont" & vbCrLf & _
"0 21 moveto (" & address(1) & " " & address(0) & ") show" & vbCrLf & _
"gsave" & vbCrLf & _
"0.5 0.5 scale" & vbCrLf & _
"0 12 moveto (^104" & address(1) & ") (height=0.3) code128 barcode" & vbCrLf & _
"grestore" & vbCrLf & _
"newpath" & vbCrLf & _
"32 0 moveto (" & address(14) & ") show" & vbCrLf & _
"newpath" & vbCrLf & _
"/Helvetica findfont 11 scalefont setfont" & vbCrLf & _
"-70 -180 translate" & vbCrLf
pos = 56
s = s & "0 " & CStr(pos) & " moveto (" & address(9) & ") show" & vbCrLf & _
"newpath" & vbCrLf
pos = pos - fsize
If address(10) <> Empty Then
s = s & "0 " & CStr(pos) & " moveto (" & address(10) & ") show" & vbCrLf & _
"newpath" & vbCrLf
pos = pos - fsize
End If
s = s & "0 " & CStr(pos) & " moveto (" & address(11) & ") show" & vbCrLf & _
"newpath" & vbCrLf
pos = pos - fsize
s = s & "0 " & CStr(pos) & " moveto (" & address(12) & ") show" & vbCrLf & _
"newpath" & vbCrLf
pos = pos - fsize - 5
s = s & "1 " & CStr(pos) & " moveto (" & address(8) & ") () postnet barcode" & vbCrLf & _
"%%PageTrailer" & vbCrLf & _
"pagelevel restore" & vbCrLf & _
"showpage" & vbCrLf
PostScriptItem = s
End Function
I need to change the contents of "address(2)" and "address(8)" and use a different font to print those. I tried putting the new font in the projects fonts folder and referencing it the way "postnet" and "code128" are referenced but that left me with an entirely blank label.
The "code128" font seems to get defined in a separate file called "postscript_main.ps" and I have no idea how to incorporate the new font into that, I am really lost and hoping for a clue or a link to some documentation that might get me going in the right direction.

Resources