diff --git a/BPV/qrs/main.typ b/BPV/qrs/main.typ index ee3f0f8..a46a817 100644 --- a/BPV/qrs/main.typ +++ b/BPV/qrs/main.typ @@ -9,18 +9,18 @@ ], authors: ( ( - name: "Arthur Grisel-Davy", + name: "Arthur Grisel-Davy*", department: "Electrical and Computer Engineering", organization: "University of Waterloo", - location: [Waterloo, Canada], - email: "agriseld@uwaterloo.ca" + location: "Waterloo, Canada", + email: "agriseld@uwaterloo.ca", ), ( name: "Sebastian Fischmeister", - department: "Electrical and Computer Engineering", - organization: "University of Waterloo", - location: [Waterloo, Canada], - email: "sfischme@uwaterloo.ca" + department: "", + organization: "", + location: "", + email: "sfischme@uwaterloo.ca", ), ), index-terms: (), diff --git a/BPV/qrs/template.typ b/BPV/qrs/template.typ index 56d346d..ffc20b8 100644 --- a/BPV/qrs/template.typ +++ b/BPV/qrs/template.typ @@ -1,5 +1,18 @@ // This function gets your whole document as its `body` and formats // it as an article in the style of the IEEE. + +// CHANGES MADE TO COMPLY WITH QRS +// Font changed from STIX TWO Text to Times New Roman +// Gutter changed from 12 to 18 pt +// Indent on consecutiv par removed +// Changed x margin to 0.75in +// Changed y margin to 1in +// Changed heading numbering to 1.1.1 +// Changed heading styles +// Change author listing +// Change abstract heading boldness + + #let ieee( // The paper's title. title: "Paper Title", @@ -29,7 +42,7 @@ set document(title: title, author: authors.map(author => author.name)) // Set the body font. - set text(font: "STIX Two Text", size: 10pt) + set text(font: "Times New Roman", size: 10pt) // Configure the page. set page( @@ -40,9 +53,11 @@ (x: 41.5pt, top: 80.51pt, bottom: 89.51pt) } else { ( - x: (50pt / 216mm) * 100%, - top: (55pt / 279mm) * 100%, - bottom: (64pt / 279mm) * 100%, + x: 0.75in, + y: 1in, + //x: (50pt / 216mm) * 100%, + //top: (55pt / 279mm) * 100%, + //bottom: (64pt / 279mm) * 100%, ) } ) @@ -56,7 +71,7 @@ set list(indent: 10pt, body-indent: 9pt) // Configure headings. - set heading(numbering: "1.1.1") + set heading(numbering: "1.") show heading: it => locate(loc => { // Find out the final number of the heading counter. let levels = counter(heading).at(loc) @@ -68,84 +83,93 @@ set text(10pt, weight: 400) if it.level == 1 [ - // First-level headings are centered smallcaps. - // We don't want to number of the acknowledgment section. - #let is-ack = it.body in ([Acknowledgment], [Acknowledgement]) - #set align(center) - #set text(if is-ack { 10pt } else { 12pt }) #show: smallcaps - #v(20pt, weak: true) - #if it.numbering != none and not is-ack { - numbering("I.", deepest) - h(7pt, weak: true) - } - #it.body - #v(13.75pt, weak: true) - ] else if it.level == 2 [ + #v(12pt, weak: true) + #it + #v(12pt, weak: true) + ] else if it.level >= 2 [ // Second-level headings are run-ins. #set par(first-line-indent: 0pt) - #set text(style: "italic") + //#set text(style: "italic") #v(10pt, weak: true) - #if it.numbering != none { - numbering("A.", deepest) - h(7pt, weak: true) - } - #it.body + #it #v(10pt, weak: true) - ] else [ - // Third level headings are run-ins too, but different. - #if it.level == 3 { - numbering("1)", deepest) - [ ] - } - _#(it.body):_ ] }) // Display the paper's title. - v(3pt, weak: true) - align(center, text(18pt, title)) - v(8.35mm, weak: true) + //v(3pt, weak: true) + align(center, text(weight: "bold", size: 14pt, title)) + v(10pt, weak: true) + - // Display the authors list. - for i in range(calc.ceil(authors.len() / 3)) { - let end = calc.min((i + 1) * 3, authors.len()) - let is-last = authors.len() == end - let slice = authors.slice(i * 3, end) - grid( - columns: slice.len() * (1fr,), - gutter: 12pt, - ..slice.map(author => align(center, { - text(12pt, author.name) - if "department" in author [ - \ #emph(author.department) - ] - if "organization" in author [ - \ #emph(author.organization) - ] - if "location" in author [ - \ #author.location - ] - if "email" in author [ - \ #link("mailto:" + author.email) - ] - })) - ) - - if not is-last { - v(16pt, weak: true) + // Make author list + // Start with names + set align(center) + let nbr_authors = authors.len() + for (i,author) in authors.enumerate(){ + if i+1 == nbr_authors{ + [#author.name\ ] + }else{ + [#author.name, ] } } + // Continue with affiliations + for author in authors{ + if author.department+author.organization+author.location != ""{ + [#author.department, #author.organization, #author.location\ ] + } + } + // Continue with the emails, same way as for authors + for (i,author) in authors.enumerate(){ + if i+1 == nbr_authors{ + [#author.email\ ] + }else{ + [#author.email, ] + } + } + [\*Corresponding author] + set align(left) + + // Display the authors list. + //for i in range(calc.ceil(authors.len() / 3)) { + // let end = calc.min((i + 1) * 3, authors.len()) + // let is-last = authors.len() == end + // let slice = authors.slice(i * 3, end) + // grid( + // columns: slice.len() * (1fr,), + // gutter: 12pt, + // ..slice.map(author => align(center, { + // text(12pt, author.name) + // if "department" in author [ + // \ #emph(author.department) + // ] + // if "organization" in author [ + // \ #emph(author.organization) + // ] + // if "location" in author [ + // \ #author.location + // ] + // if "email" in author [ + // \ #link("mailto:" + author.email) + // ] + // })) + // ) + + // if not is-last { + // v(16pt, weak: true) + // } + //} v(40pt, weak: true) // Start two column mode and configure paragraph properties. - show: columns.with(2, gutter: 12pt) - set par(justify: true, first-line-indent: 1em) + show: columns.with(2, gutter: 18pt) + set par(justify: true, first-line-indent: 0pt) show par: set block(spacing: 0.65em) // Display abstract and index terms. if abstract != none [ - #set text(weight: 700) + #set text(weight: "regular") #h(1em) _Abstract_---#abstract #if index-terms != () [ @@ -159,7 +183,7 @@ // Display bibliography. if bibliography-file != none { - show bibliography: set text(8pt) + show bibliography: set text(9pt) bibliography(bibliography-file, title: text(10pt)[References], style: "ieee") } }