使用Stripe自定义字体src

use*_*323 6 javascript css stripe-payments

以此为参考 https://stripe.com/docs/elements/reference#stripe-elements

我正在尝试创建一个自定义字体src传递给我的条带元素:

var elements = stripe.elements(
    {
        font: {
            family:'Effra',
            src: "url('https://cuddlecompanions.org/wp-content/themes/diamondphoenix/fonts/effra.eot')"
        }
    }
);

var style = {
    base: {
        fontFamily: 'Effra'  
    }
}
Run Code Online (Sandbox Code Playgroud)

但字体没有按计划显示..

任何帮助,将不胜感激:

Ash*_*yan 9

这是我的工作示例(它在我这边工作)。

var stripe = Stripe('pk_test_........'); // paste your stripe public key here

var elements = stripe.elements({
  fonts: [
    {
      // integrate your font into stripe
      cssSrc: 'https://fonts.googleapis.com/css?family=Montserrat:400,500',
    }
  ]
});

const style = {
  base: {
    color: '#32325d',
    fontFamily: 'Montserrat, sans-serif',  // set integrated font family
    fontSmoothing: 'antialiased',
    fontSize: '17px',
    '::placeholder': {
      color: '#e5286a'
    }
  }
};

this.card = elements.create('card', {
  style: style,
  hidePostalCode: true,
});
this.card.mount(this.cardInfo.nativeElement);
Run Code Online (Sandbox Code Playgroud)


use*_*323 7

谢谢大家的帮助.我得到了条纹IRC的帮助.它可能是缺少的逗号,也切换到ttf.无论如何希望这可以帮助某人:

var elements = stripe.elements({
    fonts: [
        {
            family: 'Effra',

            src: 'local("Effra"), local("effra"), url(https://cuddlecompanions.org/wp-content/themes/diamondphoenix/fonts/effra.ttf) format("truetype")',
            unicodeRange: 'U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215',
        },
    ]
});


<style>
@font-face {
font-family: 'Effra';
font-weight: 400;
src: local("Effra"), local("effra"), url(https://cuddlecompanions.org/wp-content/themes/diamondphoenix/fonts/effra.ttf) format("truetype");
unicodeRange: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
} 
</style> 
Run Code Online (Sandbox Code Playgroud)

  • @Giancarlos,因为字体已加载到iFrame中,所以您需要指定完整路径。https://yoursite.com/static/my-local-path/my-font.woff。 (2认同)

Ale*_*lex 3

stripe.elements接受一个选项对象。

stripe.elements([options])
Run Code Online (Sandbox Code Playgroud)

fonts
从 elements 对象创建的元素可以使用的自定义字体数组。

看起来它正在等待一个数组。

尝试更改为

var elements = stripe.elements(
    {
        fonts: [{
            family:'Effra',
            src: "url('https://cuddlecompanions.org/wp-content/themes/diamondphoenix/fonts/effra.eot')"
        }]
    }
);
Run Code Online (Sandbox Code Playgroud)