Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Yellow notebook paper background (scales to fit font setting)
#11
Glad you like it.   just posted rotoline demo program with more routines.    RotoLine line drawing (qb64phoenix.com)
Reply
#12
Umm... how to say this without sounding like a jerk.

Originally I indicated bplus' post which had the screenshot. Confused

Dav this is awesome! To me this is good enough. But someone else (such as a lawyer) actually having access to legal pads would ask, "Why do the letters hang away from the lines like that?" When we were children, we were taught to write on the lines LOL. Such as when writing lowercase "G" write the top loop so the bottom of it hits the line, and then let that leg hang out below the line.

Aww... just disregard this post! Carry on! Big Grin
Reply
#13
(10-11-2023, 05:11 PM)mnrvovrfc Wrote: Umm... how to say this without sounding like a jerk.

Originally I indicated bplus' post which had the screenshot. Confused

Dav this is awesome! To me this is good enough. But someone else (such as a lawyer) actually having access to legal pads would ask, "Why do the letters hang away from the lines like that?" When we were children, we were taught to write on the lines LOL. Such as when writing lowercase "G" write the top loop so the bottom of it hits the line, and then let that leg hang out below the line.

Aww... just disregard this post! Carry on! Big Grin

I noticed that too but I already sound like a jerk too often LOL
b = b + ...
Reply
#14
(10-11-2023, 04:15 PM)bplus Wrote:
(10-11-2023, 04:10 PM)Dav Wrote: That's a good one, James.  Hey, where did RotoZoom23 come from?  I haven't noticed that one before.

EDIT: bplus, spiral sounds good. Will try that.

- Dav

While you were out, James fixed RotoZoom, the 23 is the year of the new and improved routine. The d on the end is for Degreed angles as opposed to Radian Angles.

Give you guys another 2 or 3 years, and you'll finally catch up to the same DisplayImage that I've been using for the last half decade...  All that's left is for you to add in the MODE option for which corner of the image you want to place at the position specified.  Wink

Code: (Select All)
SUB DisplayImage (Image AS LONG, x AS INTEGER, y AS INTEGER, xscale AS SINGLE, yscale AS SINGLE, angle AS SINGLE, mode AS _BYTE)
    'Image is the image handle which we use to reference our image.
    'x,y is the X/Y coordinates where we want the image to be at on the screen.
    'angle is the angle which we wish to rotate the image.
    'mode determines HOW we place the image at point X,Y.
    'Mode 0 we center the image at point X,Y
    'Mode 1 we place the Top Left corner of oour image at point X,Y
    'Mode 2 is Bottom Left
    'Mode 3 is Top Right
    'Mode 4 is Bottom Right

    DIM AS INTEGER px(3), py(3), w, h, w1, h1
    DIM sinr AS SINGLE, cosr AS SINGLE, i AS _BYTE
    w = _WIDTH(Image): h = _HEIGHT(Image)
    w1 = w * xscale: h1 = h * yscale
    SELECT CASE mode
        CASE 0 'center
            px(0) = -w1 / 2: py(0) = -h1 / 2: px(3) = w1 / 2: py(3) = -h1 / 2
            px(1) = -w1 / 2: py(1) = h1 / 2: px(2) = w1 / 2: py(2) = h1 / 2
        CASE 1 'top left
            px(0) = 0: py(0) = 0: px(3) = w1: py(3) = 0
            px(1) = 0: py(1) = h1: px(2) = w1: py(2) = h1
        CASE 2 'bottom left
            px(0) = 0: py(0) = -h1: px(3) = w1: py(3) = -h1
            px(1) = 0: py(1) = 0: px(2) = w1: py(2) = 0
        CASE 3 'top right
            px(0) = -w1: py(0) = 0: px(3) = 0: py(3) = 0
            px(1) = -w1: py(1) = h1: px(2) = 0: py(2) = h1
        CASE 4 'bottom right
            px(0) = -w1: py(0) = -h1: px(3) = 0: py(3) = -h1
            px(1) = -w1: py(1) = 0: px(2) = 0: py(2) = 0
    END SELECT
    sinr = SIN(angle / 57.2957795131): cosr = COS(angle / 57.2957795131)
    FOR i = 0 TO 3
        x2 = (px(i) * cosr + sinr * py(i)) + x: y2 = (py(i) * cosr - px(i) * sinr) + y
        px(i) = x2: py(i) = y2
    NEXT
    _MAPTRIANGLE (0, 0)-(0, h - 1)-(w - 1, h - 1), Image TO(px(0), py(0))-(px(1), py(1))-(px(2), py(2))
    _MAPTRIANGLE (0, 0)-(w - 1, 0)-(w - 1, h - 1), Image TO(px(0), py(0))-(px(3), py(3))-(px(2), py(2))
END SUB

It works in angles instead of radians as well
Reply
#15
Quickly added a spiral paper, before heading of to work.  This is the first time I ever used CIRCLE for something other than drawing a whole circle.  Always something to learn.

- Dav

Code: (Select All)

'notebookpapers2.bas

'yellow, white & spiral background notebook paper.
'by Dav, OCT/2023

Screen _NewImage(800, 600, 32)

'Here's where you can load another font you want to use....
fnt& = _LoadFont("lucon.ttf", 24, "monospace")
_Font fnt&

'Call the SUB, with your title$ message
'YellowPaper "John's QB64-PE Code Notebook" '<< this one for yellow paper
'WhitePaper "John's QB64-PE Code Notebook" '<< this one for white paper
SpiralPaper "John's Spiral Notebook" '<< use this one for spiral paper
Sleep
End

'You need to call below so PRINTing text doesn't destroy background.
_PrintMode _KeepBackground

'=== show some sample information....
Color _RGB(64, 64, 64)
For y = 5 To 16
    Locate y, 2: Print Date$;
    Locate , 16: Print "Random Data ="; Rnd; RN;
Next: Print

'Use location 2 to print in left column, 16 for printing in the text lines.

Print
Locate , 16: Print "This is another line."
Print
Locate , 2: Print "Tuesday:"
Locate , 16: Print "Dear diary, today I wrote this...."
Sleep

Sub YellowPaper (title$)

    'This SUB draws yellow notebook paper, scaled to fit current font settings.
    'It also prints and centers title$ in the top title area.

    fw = _FontWidth: fh = _FontHeight 'get current font width/height settings
    '(the fw & fh we will use to calculate LINE drawing so they line up right with PRINT)

    Cls , _RGB(255, 245, 154) 'clear screen to yellow color

    'draw the two vertical brown lines, to make column/text area
    Line (fw * 12, 0)-(fw * 12, _Height), _RGB(205, 185, 98)
    Line (fw * 12.5, 0)-(fw * 12.5, _Height), _RGB(205, 185, 98)

    'draw the text lines to bottom of screen
    For y = fh - 1 To _Height Step fh
        Line (0, y)-(_Width, y), _RGB(152, 160, 74)
    Next

    If title$ <> "" Then

        'draw top brown tile area (remove this if not wanted)
        Line (0, 0)-(_Width, fh * 3), _RGB(102, 19, 15), BF '<< enough for 3 lines
        Color _RGB(255, 255, 0), _RGB(102, 19, 15)

        'Next we print title$, centering the text in the top area
        'For this we need to calcuale how many letters fit on one line, INT(_WIDTH/fw) / 2.
        'I divided that by 2 to find the center spot on the line.
        'So, subtract half of the title$ length from that spot to make it centered nice.
        Locate 2, Int((_Width / fw) / 2) - Int(Len(title$) / 2)
        Print title$; 'finally, PRINT the title$
    End If

End Sub

Sub WhitePaper (title$)
    'This SUB draws white notebook paper, scaled to fit current font settings.

    fw = _FontWidth: fh = _FontHeight 'get current font width/height settings
    '(the fw & fh we will use to calculate LINE drawing so they line up right with PRINT)

    Cls , _RGB(240, 240, 240) 'clear screen to white color

    'draw three holes
    Circle (fw * 8, fh * 8), fw * 2, _RGB(210, 210, 210)
    Paint (fw * 8 + 1, fh * 8 - 1), _RGB(210, 210, 210)

    Circle (fw * 8, fh * 20), fw * 2, _RGB(210, 210, 210)
    Paint (fw * 8 + 1, fh * 20 - 1), _RGB(210, 210, 210)

    Circle (fw * 8, fh * 32), fw * 2, _RGB(210, 210, 210)
    Paint (fw * 8 + 1, fh * 32 - 1), _RGB(210, 210, 210)

    'draw the vertical line, to make column/text area
    Line (fw * 12, 0)-(fw * 12, _Height), _RGB(219, 135, 151)

    'draw the text lines to bottom of screen
    For y = fh * 5 To _Height Step fh
        Line (0, y)-(_Width, y), _RGB(139, 179, 204)
    Next

    If title$ <> "" Then
        'Next we print title$, centering the text in the top area
        'For this we need to calcuale how many letters fit on one line, INT(_WIDTH/fw) / 2.
        'I divided that by 2 to find the center spot on the line.
        'So, subtract half of the title$ length from that spot to make it centered nice.
        Locate 2, Int((_Width / fw) / 2) - Int(Len(title$) / 2)
        Color _RGB(0, 0, 0), _RGB(240, 240, 240)
        Print title$; 'finally, PRINT the title$
    End If

End Sub

Sub SpiralPaper (title$)
    'This SUB draws spiral white notebook paper, scaled to fit current font settings.

    fw = _FontWidth: fh = _FontHeight 'get current font width/height settings
    '(the fw & fh we will use to calculate LINE drawing so they line up right with PRINT)

    Cls , _RGB(32, 32, 32)
    Line (fw * 3.5, 0)-(_Width, _Height), _RGB(240, 240, 240), BF
    For y = 0 To _Height Step fh
        Circle (fw * 4, y), fw * 2, _RGB(164, 164, 164), .6, _Pi * 1.4
        Circle (fw * 5.6, y + (fh / 3)), fw / 2, _RGB(0, 0, 0)
        Paint (fw * 5.6 + 2, y + (fh / 3) - 2), _RGB(0, 0, 0)
    Next

    'draw the vertical line, to make column/text area
    Line (fw * 16, 0)-(fw * 16, _Height), _RGB(219, 135, 151)

    'draw the text lines to bottom of screen
    For y = fh * 5 To _Height Step fh
        Line (fw * 3.5, y)-(_Width, y), _RGB(139, 179, 204)
    Next

    If title$ <> "" Then
        'Next we print title$, centering the text in the top area
        'For this we need to calcuale how many letters fit on one line, INT(_WIDTH/fw) / 2.
        'I divided that by 2 to find the center spot on the line.
        'So, subtract half of the title$ length from that spot to make it centered nice.
        Locate 2, Int((_Width / fw) / 2) - Int(Len(title$) / 2) + 4 '<< added 4 for spiral offset
        Color _RGB(0, 0, 0), _RGB(240, 240, 240)
        Print title$; 'finally, PRINT the title$
    End If

End Sub

Find my programs here in Dav's QB64 Corner
Reply
#16
Dav I think you've found a new calling! You have anything in 8.5x11 Inkjet and Laser
b = b + ...
Reply
#17
And I add for you an accounting ledger, as per the ones which I remember seeing and using in my youth:

Code: (Select All)

'notebookpapers2.bas

'yellow, white & spiral background notebook paper.
'by Dav, OCT/2023
$COLOR:32
SCREEN _NEWIMAGE(800, 600, 32)

'Here's where you can load another font you want to use....
fnt& = _LOADFONT("lucon.ttf", 24, "monospace")
_FONT fnt&

'Call the SUB, with your title$ message
'YellowPaper "John's QB64-PE Code Notebook" '<< this one for yellow paper
'WhitePaper "John's QB64-PE Code Notebook" '<< this one for white paper
'SpiralPaper "John's Spiral Notebook" '<< use this one for spiral paper
Ledger "Steve's Accounting Ledger"
SLEEP
END

'You need to call below so PRINTing text doesn't destroy background.
_PRINTMODE _KEEPBACKGROUND

'=== show some sample information....
COLOR _RGB(64, 64, 64)
FOR y = 5 TO 16
LOCATE y, 2: PRINT DATE$;
LOCATE , 16: PRINT "Random Data ="; RND; RN;
NEXT: PRINT

'Use location 2 to print in left column, 16 for printing in the text lines.

PRINT
LOCATE , 16: PRINT "This is another line."
PRINT
LOCATE , 2: PRINT "Tuesday:"
LOCATE , 16: PRINT "Dear diary, today I wrote this...."
SLEEP

SUB YellowPaper (title$)

'This SUB draws yellow notebook paper, scaled to fit current font settings.
'It also prints and centers title$ in the top title area.

fw = _FONTWIDTH: fh = _FONTHEIGHT 'get current font width/height settings
'(the fw & fh we will use to calculate LINE drawing so they line up right with PRINT)

CLS , _RGB(255, 245, 154) 'clear screen to yellow color

'draw the two vertical brown lines, to make column/text area
LINE (fw * 12, 0)-(fw * 12, _HEIGHT), _RGB(205, 185, 98)
LINE (fw * 12.5, 0)-(fw * 12.5, _HEIGHT), _RGB(205, 185, 98)

'draw the text lines to bottom of screen
FOR y = fh - 1 TO _HEIGHT STEP fh
LINE (0, y)-(_WIDTH, y), _RGB(152, 160, 74)
NEXT

IF title$ <> "" THEN

'draw top brown tile area (remove this if not wanted)
LINE (0, 0)-(_WIDTH, fh * 3), _RGB(102, 19, 15), BF '<< enough for 3 lines
COLOR _RGB(255, 255, 0), _RGB(102, 19, 15)

'Next we print title$, centering the text in the top area
'For this we need to calcuale how many letters fit on one line, INT(_WIDTH/fw) / 2.
'I divided that by 2 to find the center spot on the line.
'So, subtract half of the title$ length from that spot to make it centered nice.
LOCATE 2, INT((_WIDTH / fw) / 2) - INT(LEN(title$) / 2)
PRINT title$; 'finally, PRINT the title$
END IF

END SUB

SUB WhitePaper (title$)
'This SUB draws white notebook paper, scaled to fit current font settings.

fw = _FONTWIDTH: fh = _FONTHEIGHT 'get current font width/height settings
'(the fw & fh we will use to calculate LINE drawing so they line up right with PRINT)

CLS , _RGB(240, 240, 240) 'clear screen to white color

'draw three holes
CIRCLE (fw * 8, fh * 8), fw * 2, _RGB(210, 210, 210)
PAINT (fw * 8 + 1, fh * 8 - 1), _RGB(210, 210, 210)

CIRCLE (fw * 8, fh * 20), fw * 2, _RGB(210, 210, 210)
PAINT (fw * 8 + 1, fh * 20 - 1), _RGB(210, 210, 210)

CIRCLE (fw * 8, fh * 32), fw * 2, _RGB(210, 210, 210)
PAINT (fw * 8 + 1, fh * 32 - 1), _RGB(210, 210, 210)

'draw the vertical line, to make column/text area
LINE (fw * 12, 0)-(fw * 12, _HEIGHT), _RGB(219, 135, 151)

'draw the text lines to bottom of screen
FOR y = fh * 5 TO _HEIGHT STEP fh
LINE (0, y)-(_WIDTH, y), _RGB(139, 179, 204)
NEXT

IF title$ <> "" THEN
'Next we print title$, centering the text in the top area
'For this we need to calcuale how many letters fit on one line, INT(_WIDTH/fw) / 2.
'I divided that by 2 to find the center spot on the line.
'So, subtract half of the title$ length from that spot to make it centered nice.
LOCATE 2, INT((_WIDTH / fw) / 2) - INT(LEN(title$) / 2)
COLOR _RGB(0, 0, 0), _RGB(240, 240, 240)
PRINT title$; 'finally, PRINT the title$
END IF

END SUB

SUB SpiralPaper (title$)
'This SUB draws spiral white notebook paper, scaled to fit current font settings.

fw = _FONTWIDTH: fh = _FONTHEIGHT 'get current font width/height settings
'(the fw & fh we will use to calculate LINE drawing so they line up right with PRINT)

CLS , _RGB(32, 32, 32)
LINE (fw * 3.5, 0)-(_WIDTH, _HEIGHT), _RGB(240, 240, 240), BF
FOR y = 0 TO _HEIGHT STEP fh
CIRCLE (fw * 4, y), fw * 2, _RGB(164, 164, 164), .6, _PI * 1.4
CIRCLE (fw * 5.6, y + (fh / 3)), fw / 2, _RGB(0, 0, 0)
PAINT (fw * 5.6 + 2, y + (fh / 3) - 2), _RGB(0, 0, 0)
NEXT

'draw the vertical line, to make column/text area
LINE (fw * 16, 0)-(fw * 16, _HEIGHT), _RGB(219, 135, 151)

'draw the text lines to bottom of screen
FOR y = fh * 5 TO _HEIGHT STEP fh
LINE (fw * 3.5, y)-(_WIDTH, y), _RGB(139, 179, 204)
NEXT

IF title$ <> "" THEN
'Next we print title$, centering the text in the top area
'For this we need to calcuale how many letters fit on one line, INT(_WIDTH/fw) / 2.
'I divided that by 2 to find the center spot on the line.
'So, subtract half of the title$ length from that spot to make it centered nice.
LOCATE 2, INT((_WIDTH / fw) / 2) - INT(LEN(title$) / 2) + 4 '<< added 4 for spiral offset
COLOR _RGB(0, 0, 0), _RGB(240, 240, 240)
PRINT title$; 'finally, PRINT the title$
END IF

END SUB

SUB Ledger (title$)
'This SUB draws a sepia accounting ledger, scaled to fit current font settings.

fw = _FONTWIDTH: fh = _FONTHEIGHT 'get current font width/height settings
'(the fw & fh we will use to calculate LINE drawing so they line up right with PRINT)

CLS , _RGB(32, 32, 32)

LINE (0, 0)-(_WIDTH, _HEIGHT), Sepia, BF

'draw the vertical line, to make column/text area
FOR x = 0 TO _WIDTH STEP fw
LINE (x, fh * 2)-STEP(0, _HEIGHT), _RGB(139, 179, 204)
NEXT
LINE (fw * 16, 0)-(fw * 16, _HEIGHT), _RGB(219, 135, 151)
LINE (_WIDTH - (fw * 16), 0)-STEP(0, _HEIGHT), _RGB(219, 135, 151)

'draw the text lines to bottom of screen
FOR y = fh * 2 TO _HEIGHT STEP fh
LINE (0, y)-(_WIDTH, y), _RGB(139, 179, 204)
NEXT

IF title$ <> "" THEN
'Next we print title$, centering the text in the top area
'I divided that by 2 to find the center spot on the line.
'So, subtract half of the title$ length from that spot to make it centered nice.
COLOR _RGB(64, 64, 64), 0
_PRINTSTRING ((_WIDTH - _PRINTWIDTH(title$)) / 2, 1), title$
END IF
COLOR _RGB(120, 120, 120), 0
_PRINTSTRING (0, fh), "Date"
_PRINTSTRING (fw * 16, fh), "Description"
_PRINTSTRING (_WIDTH - (fw * 16), fh), "Amount"
END SUB

The grids are so that amounts all align properly in the final column, all nice and neatly for folks who like to print in these things. I remember having to use these to track such things as mileage and expenses while out on project, so that I could turn them in all nice and neat to accounting when I got back home from being out on the road.

Honestly, I don't remember if the date/description/amount titles were centered, or not. I think, if my memory isn't failing, the booklets we had were printed cheaply and left centered as I've did these, but they'd be easy enough to center in their respective areas, if anyone ever wanted.
Reply
#18
[Image: 00fdd570c89aa2f906fa5943383379ff.jpg]

(This is similar to style ledger which we used to print stuff out in.  I hope you can kinda see the resemblance, as the one in my memory is still a little different from this one.)
Reply
#19
Nice.  Oh yes, I know those well, Steve.  My dad was a CPA and did everything old-school.  Have boxes of old big ledgers and accounting paper still.  

I should have stayed home and played with QB64 more - went to work and the gig was called off.  The program director waited until I carried in all my music gear before coming in to tell me.  While I was driving home I thought to make the spiral paper look better. Made the coil thicker and gave the paper a rounded edge.   

(My friend will be surprised how his little paper request got all this attention here. lol.)

- Dav

Code: (Select All)

'notebookpapers2b.bas

'yellow, white & spiral background notebook paper.
'by Dav, OCT/2023

Screen _NewImage(800, 600, 32)

'Here's where you can load another font you want to use....
'fnt& = _LoadFont("lucon.ttf", 24, "monospace")
'_Font fnt&

'Call the SUB, with your title$ message
'YellowPaper "John's QB64-PE Code Notebook" '<< this one for yellow paper
'WhitePaper "John's QB64-PE Code Notebook" '<< this one for white paper
SpiralPaper "John's Spiral Notebook" '<< use this one for spiral paper
Sleep
End

'You need to call below so PRINTing text doesn't destroy background.
_PrintMode _KeepBackground

'=== show some sample information....
Color _RGB(64, 64, 64)
For y = 5 To 16
    Locate y, 2: Print Date$;
    Locate , 16: Print "Random Data ="; Rnd; RN;
Next: Print

'Use location 2 to print in left column, 16 for printing in the text lines.

Print
Locate , 16: Print "This is another line."
Print
Locate , 2: Print "Tuesday:"
Locate , 16: Print "Dear diary, today I wrote this...."
Sleep

Sub YellowPaper (title$)

    'This SUB draws yellow notebook paper, scaled to fit current font settings.
    'It also prints and centers title$ in the top title area.

    fw = _FontWidth: fh = _FontHeight 'get current font width/height settings
    '(the fw & fh we will use to calculate LINE drawing so they line up right with PRINT)

    Cls , _RGB(255, 245, 154) 'clear screen to yellow color

    'draw the two vertical brown lines, to make column/text area
    Line (fw * 12, 0)-(fw * 12, _Height), _RGB(205, 185, 98)
    Line (fw * 12.5, 0)-(fw * 12.5, _Height), _RGB(205, 185, 98)

    'draw the text lines to bottom of screen
    For y = fh - 1 To _Height Step fh
        Line (0, y)-(_Width, y), _RGB(152, 160, 74)
    Next

    If title$ <> "" Then

        'draw top brown tile area (remove this if not wanted)
        Line (0, 0)-(_Width, fh * 3), _RGB(102, 19, 15), BF '<< enough for 3 lines
        Color _RGB(255, 255, 0), _RGB(102, 19, 15)

        'Next we print title$, centering the text in the top area
        'For this we need to calcuale how many letters fit on one line, INT(_WIDTH/fw) / 2.
        'I divided that by 2 to find the center spot on the line.
        'So, subtract half of the title$ length from that spot to make it centered nice.
        Locate 2, Int((_Width / fw) / 2) - Int(Len(title$) / 2)
        Print title$; 'finally, PRINT the title$
    End If

End Sub

Sub WhitePaper (title$)
    'This SUB draws white notebook paper, scaled to fit current font settings.

    fw = _FontWidth: fh = _FontHeight 'get current font width/height settings
    '(the fw & fh we will use to calculate LINE drawing so they line up right with PRINT)

    Cls , _RGB(240, 240, 240) 'clear screen to white color

    'draw three holes
    Circle (fw * 8, fh * 8), fw * 2, _RGB(210, 210, 210)
    Paint (fw * 8 + 1, fh * 8 - 1), _RGB(210, 210, 210)

    Circle (fw * 8, fh * 20), fw * 2, _RGB(210, 210, 210)
    Paint (fw * 8 + 1, fh * 20 - 1), _RGB(210, 210, 210)

    Circle (fw * 8, fh * 32), fw * 2, _RGB(210, 210, 210)
    Paint (fw * 8 + 1, fh * 32 - 1), _RGB(210, 210, 210)

    'draw the vertical line, to make column/text area
    Line (fw * 12, 0)-(fw * 12, _Height), _RGB(219, 135, 151)

    'draw the text lines to bottom of screen
    For y = fh * 5 To _Height Step fh
        Line (0, y)-(_Width, y), _RGB(139, 179, 204)
    Next

    If title$ <> "" Then
        'Next we print title$, centering the text in the top area
        'For this we need to calcuale how many letters fit on one line, INT(_WIDTH/fw) / 2.
        'I divided that by 2 to find the center spot on the line.
        'So, subtract half of the title$ length from that spot to make it centered nice.
        Locate 2, Int((_Width / fw) / 2) - Int(Len(title$) / 2)
        Color _RGB(0, 0, 0), _RGB(240, 240, 240)
        Print title$; 'finally, PRINT the title$
    End If

End Sub

Sub SpiralPaper (title$)
    'This SUB draws spiral white notebook paper, scaled to fit current font settings.

    fw = _FontWidth: fh = _FontHeight 'get current font width/height settings
    '(the fw & fh we will use to calculate LINE drawing so they line up right with PRINT)

    Cls , _RGB(32, 32, 32)
    'round right corner
    Circle (_Width - (fw * 4), fh), fw * 2, _RGB(240, 240, 240)
    Paint (_Width - (fw * 4) + 1, fh - 1), _RGB(240, 240, 240)
    'paper
    Line (fw * 3.5, 0)-(_Width - fw * 4, fh * 4), _RGB(240, 240, 240), BF
    Line (fw * 3.5, fh)-(_Width - fw * 2, _Height), _RGB(240, 240, 240), BF

    For y = 0 To _Height Step fh
        Circle (fw * 4, y), fw * 2, _RGB(164, 164, 164), .6, _Pi * 1.4
        Circle (fw * 4 + 1, y + 1), fw * 2, _RGB(132, 132, 132), .6, _Pi * 1.4
        Circle (fw * 4 + 2, y + 2), fw * 2, _RGB(100, 100, 100), .6, _Pi * 1.4
        Circle (fw * 4 + 3, y + 3), fw * 2, _RGB(100, 100, 100), .6, _Pi * 1.4
        Circle (fw * 5.6, y + (fh / 3)), fw / 2, _RGB(0, 0, 0)
        Paint (fw * 5.6 + 2, y + (fh / 3) - 2), _RGB(0, 0, 0)
    Next

    'draw the vertical line, to make column/text area
    Line (fw * 16, 0)-(fw * 16, _Height), _RGB(219, 135, 151)

    'draw the text lines to bottom of screen
    For y = fh * 5 To _Height Step fh
        Line (fw * 3.5, y)-(_Width - (fw * 2), y), _RGB(139, 179, 204)
    Next

    If title$ <> "" Then
        'Next we print title$, centering the text in the top area
        'For this we need to calcuale how many letters fit on one line, INT(_WIDTH/fw) / 2.
        'I divided that by 2 to find the center spot on the line.
        'So, subtract half of the title$ length from that spot to make it centered nice.
        Locate 2, Int((_Width / fw) / 2) - Int(Len(title$) / 2) + 4 '<< added 4 for spiral offset
        Color _RGB(0, 0, 0), _RGB(240, 240, 240)
        Print title$; 'finally, PRINT the title$
    End If

End Sub

Find my programs here in Dav's QB64 Corner
Reply
#20
Wow that is nice Dav, College Ruled paper it looks like to me.

Steve's accounting ledger page reminded me of my Accounting Daily Journal Form or page from Account Transaction Journal. I went looking for the one I made in Libre Office years ago, lost now dang it but been years, 2-3 computers ago, since I had Libre Office.

I must be using copies of copies, so I 've started my QB64pe version today. I do my shopping list on another form I redrew from QB64pe.
b = b + ...
Reply




Users browsing this thread: 3 Guest(s)