提交 95b8d491 编写于 作者: R Ricardo Cabello

Merge pull request #6469 from gero3/new_geometry_text_allow_drop

Allow dropping of font files to add as  example
......@@ -68,7 +68,6 @@
<script src="fonts/droid/droid_sans_bold.typeface.js"></script>
<script src="fonts/droid/droid_serif_regular.typeface.js"></script>
<script src="fonts/droid/droid_serif_bold.typeface.js"></script>
<!-- todo async loader for fonts -->
<script>
......@@ -122,8 +121,8 @@
};
var reverseFontMap = {};
var reverseWeightMap = {};
var reverseFontMap = [];
var reverseWeightMap = [];
for ( var i in fontMap ) reverseFontMap[ fontMap[i] ] = i;
for ( var i in weightMap ) reverseWeightMap[ weightMap[i] ] = i;
......@@ -139,16 +138,11 @@
var postprocessing = { enabled : false };
var glow = 0.9;
var fontIndex = 0;
init();
animate();
function capitalize( txt ) {
return txt.substring( 0, 1 ).toUpperCase() + txt.substring( 1 );
}
function decimalToHex( d ) {
var hex = Number( d ).toString( 16 );
......@@ -265,6 +259,10 @@
document.addEventListener( 'touchmove', onDocumentTouchMove, false );
document.addEventListener( 'keypress', onDocumentKeyPress, false );
document.addEventListener( 'keydown', onDocumentKeyDown, false );
renderer.domElement.addEventListener( 'drop', onDrop, false );
renderer.domElement.addEventListener("dragover", function (evt) {
evt.preventDefault();
}, false);
document.getElementById( "color" ).addEventListener( 'click', function() {
......@@ -277,32 +275,20 @@
document.getElementById( "font" ).addEventListener( 'click', function() {
if ( font == "helvetiker" ) {
font = "optimer";
} else if ( font == "optimer" ) {
font = "gentilis";
} else if ( font == "gentilis" ) {
font = "droid sans";
} else if ( font == "droid sans" ) {
font = "droid serif";
} else {
font = "helvetiker";
fontIndex ++;
if ( fontIndex >= reverseFontMap.length ) {
fontIndex = 0;
}
font = reverseFontMap[fontIndex];
refreshText();
}, false );
document.getElementById( "weight" ).addEventListener( 'click', function() {
if ( weight == "bold" ) {
......@@ -398,6 +384,38 @@
}
function onDrop( e ) {
e.preventDefault();
var file = e.dataTransfer.files[0],
reader = new FileReader();
reader.onload = function ( event ) {
console.log( event.target );
eval( event.target.result );
var index = 0;
for ( f in THREE.FontUtils.faces ) {
if ( ! fontMap[ f ] ) {
fontMap[ f ] = reverseFontMap.length;
reverseFontMap[ reverseFontMap.length ] = f;
font = f;
}
};
refreshText();
};
console.log(file);
reader.readAsText(file);
return false;
};
function onDocumentKeyDown( event ) {
if ( firstLetter ) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册