mirror of
https://github.com/mmahdium/portfolio.git
synced 2026-08-17 05:24:30 +03:30
feat(resume): enhance print styling and refactor component structure
- Add print media queries to main.css for proper PDF export formatting - Ensure white background and light color scheme when printing - Refactor ResumeAdditionalInfo component to display skills in categorized format - Remove languages and certifications from additional info section - Add ResumeLanguages component for dedicated language display - Optimize spacing with print-specific margin utilities across all resume sections - Improve text wrapping and hyphenation in ResumeExperience component - Enhance ResumeHeader layout with print-optimized image sizing - Update resume data structure to support new component organization - Add research documentation on mentioning AI skills in resume - Update PDF export endpoint to work with refactored component structure - Remove outdated chat history file
This commit is contained in:
@@ -3,46 +3,79 @@ const { resume } = useResumeData()
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="min-h-screen bg-gray-100 flex items-center justify-center p-4 print:p-0 print:bg-white">
|
||||
<div class="resume-wrapper">
|
||||
<!-- A4 Container -->
|
||||
<div
|
||||
class="resume-container bg-white shadow-lg max-w-[210mm] min-h-[297mm] w-full print:shadow-none print:max-w-none">
|
||||
<div class="resume-container">
|
||||
<!-- Single-column vertical stack -->
|
||||
<div class="flex flex-col p-6">
|
||||
<div class="resume-content">
|
||||
<!-- Header with Photo + Name + Contact -->
|
||||
<ResumeHeader :basics="resume.basics" />
|
||||
|
||||
<!-- Summary -->
|
||||
<ResumeSummary :summary="resume.basics.summary" />
|
||||
|
||||
<!-- Skills & Qualifications -->
|
||||
<ResumeAdditionalInfo :skills="resume.skills" />
|
||||
|
||||
<!-- Experience -->
|
||||
<ResumeExperience :work="resume.work" />
|
||||
|
||||
<!-- Education -->
|
||||
<ResumeEducation :education="resume.education" />
|
||||
|
||||
<!-- Additional Information -->
|
||||
<ResumeAdditionalInfo :skills="resume.skills" :languages="resume.languages"
|
||||
:certifications="resume.certifications" />
|
||||
<!-- Languages & Certifications -->
|
||||
<ResumeLanguages :languages="resume.languages" :certifications="resume.certificates" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
.resume-wrapper {
|
||||
background: #f3f4f6;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
padding: 1rem;
|
||||
}
|
||||
|
||||
.resume-container {
|
||||
background: white;
|
||||
box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1);
|
||||
max-width: 210mm;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.resume-content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding: 1.5rem !important;
|
||||
}
|
||||
|
||||
@media print {
|
||||
.no-print {
|
||||
display: none !important;
|
||||
.resume-wrapper {
|
||||
background: white !important;
|
||||
padding: 0 !important;
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
.resume-container {
|
||||
width: 210mm;
|
||||
min-height: 297mm;
|
||||
width: 210mm !important;
|
||||
max-width: none !important;
|
||||
box-shadow: none !important;
|
||||
border: none !important;
|
||||
margin: 0 !important;
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
.resume-content {
|
||||
padding: 0.75rem !important;
|
||||
}
|
||||
|
||||
* {
|
||||
print-color-adjust: exact;
|
||||
-webkit-print-color-adjust: exact;
|
||||
hyphens: none !important;
|
||||
-webkit-hyphens: none !important;
|
||||
}
|
||||
|
||||
section {
|
||||
|
||||
Reference in New Issue
Block a user