Add Outline font, UI adjustments

This commit is contained in:
Shawn 2018-11-30 14:18:42 -06:00
parent 41de5350b7
commit 753935f284
16 changed files with 811 additions and 497 deletions

View file

@ -64,7 +64,7 @@ export default class EditableFontface extends Component {
) : null; ) : null;
return ( return (
<div style={{ position: 'relative' }}> <div style={{ position: 'relative', ...(fontFace.container || {}) }}>
<style scoped>{'@keyframes textBlink { 0% { opacity: 1 } 30% { opacity: 0.6 } 60% { opacity: 1 } }'}</style> <style scoped>{'@keyframes textBlink { 0% { opacity: 1 } 30% { opacity: 0.6 } 60% { opacity: 1 } }'}</style>
{fontInput} {fontInput}
<div ref={me.state.fontRender} style={textStyles} title={value}>{textRender(value)}</div> <div ref={me.state.fontRender} style={textStyles} title={value}>{textRender(value)}</div>
@ -93,6 +93,7 @@ export const PRESETS = {
'Lazer': require('../FontFaces/Lazer'), 'Lazer': require('../FontFaces/Lazer'),
'Neon': require('../FontFaces/Neon'), 'Neon': require('../FontFaces/Neon'),
'Old Blue': require('../FontFaces/OldBlue'), 'Old Blue': require('../FontFaces/OldBlue'),
'Outline': require('../FontFaces/Outline'),
'Retro Rainbow': require('../FontFaces/RetroRainbow'), 'Retro Rainbow': require('../FontFaces/RetroRainbow'),
'The Special': require('../FontFaces/TheSpecial'), 'The Special': require('../FontFaces/TheSpecial'),
'Vapor Wave': require('../FontFaces/VaporWave'), 'Vapor Wave': require('../FontFaces/VaporWave'),

View file

@ -1,5 +1,4 @@
module.exports = { module.exports = {
container: {},
editorStyle: { editorStyle: {
fontFamily: 'courier, Courier New', fontFamily: 'courier, Courier New',
fontWeight: 'bold', fontWeight: 'bold',
@ -12,4 +11,7 @@ module.exports = {
fontWeight: 'bold', fontWeight: 'bold',
textShadow: '1px 1px 2px #003605', textShadow: '1px 1px 2px #003605',
}, },
previewOverrides: {
fontSize: '1.6em',
},
}; };

View file

@ -1,5 +1,4 @@
module.exports = { module.exports = {
container: {},
editorStyle: { editorStyle: {
fontFamily: 'helvetica, Helvetica Nue', fontFamily: 'helvetica, Helvetica Nue',
fontWeight: 'bold', fontWeight: 'bold',
@ -14,6 +13,7 @@ module.exports = {
}, },
previewOverrides: { previewOverrides: {
fontSize: '1.5em', fontSize: '1.5em',
overflow: 'hidden',
padding: '0 1rem 0 1rem', padding: '0 1rem 0 1rem',
}, },
}; };

View file

@ -1,5 +1,4 @@
module.exports = { module.exports = {
container: {},
editorStyle: { editorStyle: {
fontFamily: 'helvetica, Helvetica Nue', fontFamily: 'helvetica, Helvetica Nue',
fontWeight: 'bold', fontWeight: 'bold',
@ -20,4 +19,7 @@ module.exports = {
WebkitBackgroundClip: 'text', WebkitBackgroundClip: 'text',
WebkitTextStroke: '0.03em rgba(255, 255, 255, 0.6)', WebkitTextStroke: '0.03em rgba(255, 255, 255, 0.6)',
}, },
previewOverrides: {
fontSize: '1.8em',
},
}; };

View file

@ -1,5 +1,4 @@
module.exports = { module.exports = {
container: {},
editorStyle: { editorStyle: {
fontFamily: 'Helvetica, Arial', fontFamily: 'Helvetica, Arial',
fontWeight: 'bold', fontWeight: 'bold',

View file

@ -17,6 +17,7 @@ module.exports = {
}, },
previewOverrides: { previewOverrides: {
height: '2.6rem', height: '2.6rem',
overflow: 'hidden',
}, },
textRender: (text) => { textRender: (text) => {
const id = `curve-${text.replace(/[^A-Za-z0-9]/g, '')}-oceanwave` const id = `curve-${text.replace(/[^A-Za-z0-9]/g, '')}-oceanwave`

View file

@ -0,0 +1,18 @@
module.exports = {
editorStyle: {
fontFamily: 'arial',
fontWeight: 'bold',
fontSize: '2em',
},
text: {
color: '#fff',
fontFamily: 'arial',
fontSize: '2rem',
fontWeight: 'bold',
textShadow: '2px 2px .1px #000, -1px -1px .1px #000, 1px -1px .1px #000, -1px 1px .1px #000, 1px 1px .1px #000',
},
previewOverrides: {
fontSize: '1.6rem',
padding: '0 .04rem',
},
};

View file

@ -1,5 +1,4 @@
module.exports = { module.exports = {
container: {},
editorStyle: { editorStyle: {
fontFamily: 'Arial, sans-serif', fontFamily: 'Arial, sans-serif',
fontWeight: 'bold', fontWeight: 'bold',

View file

@ -1,7 +1,6 @@
import React from 'react'; import React from 'react';
module.exports = { module.exports = {
container: {},
editorStyle: { editorStyle: {
fontFamily: 'Arial, sans-serif', fontFamily: 'Arial, sans-serif',
fontWeight: 'bold', fontWeight: 'bold',

View file

@ -10,7 +10,9 @@ const charToFullWidth = char => {
const stringToFullWidth = const stringToFullWidth =
module.exports = { module.exports = {
container: {}, container: {
overflow: 'hidden',
},
editorStyle: {}, editorStyle: {},
text: { text: {
fontFamily: 'Segoe UI,Helvetica,Arial', fontFamily: 'Segoe UI,Helvetica,Arial',

View file

@ -49,11 +49,13 @@ export default class RichDraggable extends Component {
return ( return (
<Draggable {...props} bounds={bounds} offsetParent={body} cancel=".no-drag"> <Draggable {...props} bounds={bounds} offsetParent={body} cancel=".no-drag">
<div ref={me.contents} style={{ padding: '15px', position: 'absolute', border: '4px dashed #ddd', cursor: 'move' }} className="creatifyDecor"> <div ref={me.contents} style={{ border: '4px dashed rgba(0, 0, 0, .7)', cursor: 'move', position: 'absolute' }} className="creatifyDecor">
<div style={{ border: '4px dashed rgba(255, 255, 255, .8)', margin: '-5px -3px -3px -5px', padding: '15px' }}>
<div className="no-drag" style={{ position: 'relative', cursor: 'auto' }}> <div className="no-drag" style={{ position: 'relative', cursor: 'auto' }}>
{props.children} {props.children}
</div> </div>
</div> </div>
</div>
</Draggable> </Draggable>
); );
} }

View file

@ -81,7 +81,7 @@ const getRasterizedCanvas = (contents, width, height) => {
}); });
}; };
export default class Creatify extends Component { export default class Memeify extends Component {
constructor(props) { constructor(props) {
super(props); super(props);
@ -94,7 +94,7 @@ export default class Creatify extends Component {
{ {
value: fontName, value: fontName,
label: ( label: (
<div style={{ maxHeight: '150px', maxWidth: '100%', fontSize: '16px', overflow: 'hidden' }}> <div style={{ maxHeight: '150px', maxWidth: '100%', fontSize: '16px' }}>
<EditableFontface key={fontName} fontFace={FontPresets[fontName]} preview={true} value={fontName} editable={false} blinkSelection={false} /> <EditableFontface key={fontName} fontFace={FontPresets[fontName]} preview={true} value={fontName} editable={false} blinkSelection={false} />
</div> </div>
), ),

View file

@ -1,7 +1,7 @@
import React from 'react'; import React from 'react';
import { validateFile } from '../../utils/file'; import { validateFile } from '../../utils/file';
import Creatify from '@components/Creatify'; import Memeify from '@components/Memeify';
import DropzonePreviewImage from '@components/DropzonePreviewImage'; import DropzonePreviewImage from '@components/DropzonePreviewImage';
import DropzoneDropItDisplay from '@components/DropzoneDropItDisplay'; import DropzoneDropItDisplay from '@components/DropzoneDropItDisplay';
import DropzoneInstructionsDisplay from '@components/DropzoneInstructionsDisplay'; import DropzoneInstructionsDisplay from '@components/DropzoneInstructionsDisplay';
@ -187,11 +187,11 @@ class Dropzone extends React.Component {
}; };
const memeifyContent = memeify && file && filePreview ? ( const memeifyContent = memeify && file && filePreview ? (
<Creatify flex toolbarClassName={'dropzone-memeify-toolbar'} onSave={(canvas) => this.selectFileFromCanvas(canvas)}> <Memeify flex toolbarClassName={'dropzone-memeify-toolbar'} onSave={(canvas) => this.selectFileFromCanvas(canvas)}>
<div style={{ background: '#fff', flex: 1, pointerEvents: 'none' }}> <div style={{ background: '#fff', flex: 1, pointerEvents: 'none' }}>
<img style={{ width: '100%' }} src={filePreview} /> <img style={{ width: '100%' }} src={filePreview} />
</div> </div>
</Creatify> </Memeify>
) : null; ) : null;
const dropZoneClassName = 'dropzone' + (dragOver ? ' dropzone--drag-over' : ''); const dropZoneClassName = 'dropzone' + (dragOver ? ' dropzone--drag-over' : '');

1250
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -123,6 +123,7 @@
"ndb": "^1.0.26", "ndb": "^1.0.26",
"node-sass": "^4.10.0", "node-sass": "^4.10.0",
"nodemon": "^1.18.6", "nodemon": "^1.18.6",
"react-color": "^2.14.1",
"redux-devtools": "^3.4.1", "redux-devtools": "^3.4.1",
"regenerator-transform": "^0.13.3", "regenerator-transform": "^0.13.3",
"rollup": "^0.67.0", "rollup": "^0.67.0",